./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/combinations/pc_sfifo_3.cil+token_ring.15.cil.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.15.cil.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 af1a65b4dba99a03062f9c0ef0e7df0ff9812521932f446bc475a13832d55c02 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 20:01:13,767 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 20:01:13,770 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 20:01:13,801 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 20:01:13,802 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 20:01:13,803 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 20:01:13,804 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 20:01:13,805 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 20:01:13,806 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 20:01:13,807 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 20:01:13,808 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 20:01:13,809 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 20:01:13,809 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 20:01:13,810 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 20:01:13,811 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 20:01:13,812 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 20:01:13,812 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 20:01:13,813 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 20:01:13,814 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 20:01:13,816 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 20:01:13,817 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 20:01:13,818 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 20:01:13,819 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 20:01:13,820 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 20:01:13,822 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 20:01:13,822 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 20:01:13,823 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 20:01:13,823 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 20:01:13,824 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 20:01:13,824 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 20:01:13,825 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 20:01:13,825 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 20:01:13,826 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 20:01:13,827 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 20:01:13,828 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 20:01:13,828 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 20:01:13,829 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 20:01:13,830 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 20:01:13,830 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 20:01:13,831 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 20:01:13,832 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 20:01:13,832 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:13,863 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 20:01:13,865 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 20:01:13,867 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 20:01:13,867 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 20:01:13,868 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 20:01:13,868 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 20:01:13,868 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 20:01:13,869 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 20:01:13,869 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 20:01:13,869 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 20:01:13,869 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 20:01:13,869 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 20:01:13,869 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 20:01:13,870 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 20:01:13,870 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 20:01:13,870 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 20:01:13,870 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 20:01:13,870 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 20:01:13,871 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 20:01:13,871 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 20:01:13,871 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 20:01:13,871 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 20:01:13,871 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 20:01:13,871 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 20:01:13,872 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:01:13,872 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 20:01:13,872 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 20:01:13,872 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 20:01:13,872 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 20:01:13,873 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 20:01:13,873 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 20:01:13,873 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 20:01:13,873 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 20:01:13,873 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 -> af1a65b4dba99a03062f9c0ef0e7df0ff9812521932f446bc475a13832d55c02 [2022-02-20 20:01:14,077 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 20:01:14,095 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 20:01:14,097 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 20:01:14,098 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 20:01:14,099 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 20:01:14,100 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.15.cil.c [2022-02-20 20:01:14,190 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e908e21a9/8420a1ca3739496c9b97de4e571ca704/FLAGfaafbda83 [2022-02-20 20:01:14,602 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 20:01:14,602 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_3.cil+token_ring.15.cil.c [2022-02-20 20:01:14,625 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e908e21a9/8420a1ca3739496c9b97de4e571ca704/FLAGfaafbda83 [2022-02-20 20:01:14,936 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e908e21a9/8420a1ca3739496c9b97de4e571ca704 [2022-02-20 20:01:14,940 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 20:01:14,942 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 20:01:14,946 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 20:01:14,946 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 20:01:14,949 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 20:01:14,950 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:01:14" (1/1) ... [2022-02-20 20:01:14,951 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1879baa6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:14, skipping insertion in model container [2022-02-20 20:01:14,951 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:01:14" (1/1) ... [2022-02-20 20:01:14,957 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 20:01:15,013 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 20:01:15,148 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.15.cil.c[911,924] [2022-02-20 20:01:15,210 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.15.cil.c[8416,8429] [2022-02-20 20:01:15,324 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:01:15,339 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 20:01:15,352 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.15.cil.c[911,924] [2022-02-20 20:01:15,390 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.15.cil.c[8416,8429] [2022-02-20 20:01:15,471 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:01:15,512 INFO L208 MainTranslator]: Completed translation [2022-02-20 20:01:15,512 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:15 WrapperNode [2022-02-20 20:01:15,513 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 20:01:15,513 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 20:01:15,513 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 20:01:15,514 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 20:01:15,519 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:15" (1/1) ... [2022-02-20 20:01:15,548 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:15" (1/1) ... [2022-02-20 20:01:15,639 INFO L137 Inliner]: procedures = 81, calls = 101, calls flagged for inlining = 49, calls inlined = 49, statements flattened = 1139 [2022-02-20 20:01:15,640 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 20:01:15,640 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 20:01:15,641 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 20:01:15,641 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 20:01:15,648 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:15" (1/1) ... [2022-02-20 20:01:15,652 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:15" (1/1) ... [2022-02-20 20:01:15,657 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:15" (1/1) ... [2022-02-20 20:01:15,657 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:15" (1/1) ... [2022-02-20 20:01:15,683 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:15" (1/1) ... [2022-02-20 20:01:15,701 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:15" (1/1) ... [2022-02-20 20:01:15,705 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:15" (1/1) ... [2022-02-20 20:01:15,711 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 20:01:15,712 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 20:01:15,712 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 20:01:15,712 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 20:01:15,713 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:15" (1/1) ... [2022-02-20 20:01:15,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:01:15,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:01:15,740 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:15,744 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:15,772 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 20:01:15,772 INFO L130 BoogieDeclarations]: Found specification of procedure immediate_notify [2022-02-20 20:01:15,772 INFO L138 BoogieDeclarations]: Found implementation of procedure immediate_notify [2022-02-20 20:01:15,773 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_write_p_triggered [2022-02-20 20:01:15,773 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_write_p_triggered [2022-02-20 20:01:15,773 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread1 [2022-02-20 20:01:15,773 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread1 [2022-02-20 20:01:15,773 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread2 [2022-02-20 20:01:15,773 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread2 [2022-02-20 20:01:15,774 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events1 [2022-02-20 20:01:15,774 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events1 [2022-02-20 20:01:15,774 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events2 [2022-02-20 20:01:15,774 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events2 [2022-02-20 20:01:15,774 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads2 [2022-02-20 20:01:15,774 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads2 [2022-02-20 20:01:15,775 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads1 [2022-02-20 20:01:15,775 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads1 [2022-02-20 20:01:15,778 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_read_c_triggered [2022-02-20 20:01:15,779 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_read_c_triggered [2022-02-20 20:01:15,779 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels1 [2022-02-20 20:01:15,779 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels1 [2022-02-20 20:01:15,779 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels2 [2022-02-20 20:01:15,779 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels2 [2022-02-20 20:01:15,779 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 20:01:15,780 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events2 [2022-02-20 20:01:15,780 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events2 [2022-02-20 20:01:15,780 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events1 [2022-02-20 20:01:15,780 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events1 [2022-02-20 20:01:15,780 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 20:01:15,780 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 20:01:15,780 INFO L130 BoogieDeclarations]: Found specification of procedure error1 [2022-02-20 20:01:15,781 INFO L138 BoogieDeclarations]: Found implementation of procedure error1 [2022-02-20 20:01:15,781 INFO L130 BoogieDeclarations]: Found specification of procedure error2 [2022-02-20 20:01:15,781 INFO L138 BoogieDeclarations]: Found implementation of procedure error2 [2022-02-20 20:01:15,893 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 20:01:15,915 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 20:01:16,818 INFO L766 $ProcedureCfgBuilder]: dead code at ProgramPoint $Ultimate##56: assume !(1 == ~q_free~0); [2022-02-20 20:01:16,818 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:16,880 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 20:01:16,891 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 20:01:16,892 INFO L299 CfgBuilder]: Removed 20 assume(true) statements. [2022-02-20 20:01:16,894 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:01:16 BoogieIcfgContainer [2022-02-20 20:01:16,894 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 20:01:16,895 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 20:01:16,895 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 20:01:16,898 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 20:01:16,899 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 08:01:14" (1/3) ... [2022-02-20 20:01:16,900 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ded6ba8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:01:16, skipping insertion in model container [2022-02-20 20:01:16,900 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:15" (2/3) ... [2022-02-20 20:01:16,900 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ded6ba8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:01:16, skipping insertion in model container [2022-02-20 20:01:16,901 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:01:16" (3/3) ... [2022-02-20 20:01:16,902 INFO L111 eAbstractionObserver]: Analyzing ICFG pc_sfifo_3.cil+token_ring.15.cil.c [2022-02-20 20:01:16,910 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 20:01:16,911 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2022-02-20 20:01:16,952 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:01:16,956 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:16,957 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:01:16,991 INFO L276 IsEmpty]: Start isEmpty. Operand has 530 states, 467 states have (on average 1.6445396145610278) internal successors, (768), 475 states have internal predecessors, (768), 45 states have call successors, (45), 15 states have call predecessors, (45), 15 states have return successors, (45), 43 states have call predecessors, (45), 45 states have call successors, (45) [2022-02-20 20:01:16,999 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-02-20 20:01:16,999 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:17,000 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:17,000 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:17,004 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:17,005 INFO L85 PathProgramCache]: Analyzing trace with hash -103676450, now seen corresponding path program 1 times [2022-02-20 20:01:17,012 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:17,013 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [126543909] [2022-02-20 20:01:17,013 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:17,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:17,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,249 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:17,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,292 INFO L290 TraceCheckUtils]: 0: Hoare triple {573#(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); {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:17,293 INFO L290 TraceCheckUtils]: 1: Hoare triple {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} assume true; {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:17,294 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} {535#(= ~q_read_ev~0 2)} #2074#return; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,301 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:17,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,337 INFO L290 TraceCheckUtils]: 0: Hoare triple {575#(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; {576#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:17,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {576#(= |old(~q_read_ev~0)| 0)} assume !(0 == ~q_write_ev~0); {576#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:17,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {576#(= |old(~q_read_ev~0)| 0)} assume true; {576#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:17,340 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {576#(= |old(~q_read_ev~0)| 0)} {535#(= ~q_read_ev~0 2)} #2076#return; {534#false} is VALID [2022-02-20 20:01:17,348 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:17,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,379 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:17,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,384 INFO L290 TraceCheckUtils]: 0: Hoare triple {533#true} havoc ~__retres1~0; {533#true} is VALID [2022-02-20 20:01:17,384 INFO L290 TraceCheckUtils]: 1: Hoare triple {533#true} assume 1 == ~p_dw_pc~0; {533#true} is VALID [2022-02-20 20:01:17,384 INFO L290 TraceCheckUtils]: 2: Hoare triple {533#true} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {533#true} is VALID [2022-02-20 20:01:17,385 INFO L290 TraceCheckUtils]: 3: Hoare triple {533#true} #res := ~__retres1~0; {533#true} is VALID [2022-02-20 20:01:17,385 INFO L290 TraceCheckUtils]: 4: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,385 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {533#true} {533#true} #2070#return; {533#true} is VALID [2022-02-20 20:01:17,385 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 10 [2022-02-20 20:01:17,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,390 INFO L290 TraceCheckUtils]: 0: Hoare triple {533#true} havoc ~__retres1~1; {533#true} is VALID [2022-02-20 20:01:17,391 INFO L290 TraceCheckUtils]: 1: Hoare triple {533#true} assume 1 == ~c_dr_pc~0; {533#true} is VALID [2022-02-20 20:01:17,391 INFO L290 TraceCheckUtils]: 2: Hoare triple {533#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {533#true} is VALID [2022-02-20 20:01:17,392 INFO L290 TraceCheckUtils]: 3: Hoare triple {533#true} #res := ~__retres1~1; {533#true} is VALID [2022-02-20 20:01:17,392 INFO L290 TraceCheckUtils]: 4: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,392 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {533#true} {533#true} #2072#return; {533#true} is VALID [2022-02-20 20:01:17,393 INFO L290 TraceCheckUtils]: 0: Hoare triple {577#(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; {533#true} is VALID [2022-02-20 20:01:17,393 INFO L272 TraceCheckUtils]: 1: Hoare triple {533#true} call #t~ret8 := is_do_write_p_triggered(); {533#true} is VALID [2022-02-20 20:01:17,393 INFO L290 TraceCheckUtils]: 2: Hoare triple {533#true} havoc ~__retres1~0; {533#true} is VALID [2022-02-20 20:01:17,393 INFO L290 TraceCheckUtils]: 3: Hoare triple {533#true} assume 1 == ~p_dw_pc~0; {533#true} is VALID [2022-02-20 20:01:17,394 INFO L290 TraceCheckUtils]: 4: Hoare triple {533#true} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {533#true} is VALID [2022-02-20 20:01:17,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {533#true} #res := ~__retres1~0; {533#true} is VALID [2022-02-20 20:01:17,394 INFO L290 TraceCheckUtils]: 6: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,395 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {533#true} {533#true} #2070#return; {533#true} is VALID [2022-02-20 20:01:17,396 INFO L290 TraceCheckUtils]: 8: Hoare triple {533#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {533#true} is VALID [2022-02-20 20:01:17,396 INFO L290 TraceCheckUtils]: 9: Hoare triple {533#true} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {533#true} is VALID [2022-02-20 20:01:17,396 INFO L272 TraceCheckUtils]: 10: Hoare triple {533#true} call #t~ret9 := is_do_read_c_triggered(); {533#true} is VALID [2022-02-20 20:01:17,396 INFO L290 TraceCheckUtils]: 11: Hoare triple {533#true} havoc ~__retres1~1; {533#true} is VALID [2022-02-20 20:01:17,397 INFO L290 TraceCheckUtils]: 12: Hoare triple {533#true} assume 1 == ~c_dr_pc~0; {533#true} is VALID [2022-02-20 20:01:17,397 INFO L290 TraceCheckUtils]: 13: Hoare triple {533#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {533#true} is VALID [2022-02-20 20:01:17,397 INFO L290 TraceCheckUtils]: 14: Hoare triple {533#true} #res := ~__retres1~1; {533#true} is VALID [2022-02-20 20:01:17,397 INFO L290 TraceCheckUtils]: 15: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,397 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {533#true} {533#true} #2072#return; {533#true} is VALID [2022-02-20 20:01:17,398 INFO L290 TraceCheckUtils]: 17: Hoare triple {533#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {533#true} is VALID [2022-02-20 20:01:17,398 INFO L290 TraceCheckUtils]: 18: Hoare triple {533#true} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {533#true} is VALID [2022-02-20 20:01:17,399 INFO L290 TraceCheckUtils]: 19: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,399 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {533#true} {534#false} #2078#return; {534#false} is VALID [2022-02-20 20:01:17,399 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2022-02-20 20:01:17,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,416 INFO L290 TraceCheckUtils]: 0: Hoare triple {575#(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;~q_read_ev~0 := 2; {533#true} is VALID [2022-02-20 20:01:17,417 INFO L290 TraceCheckUtils]: 1: Hoare triple {533#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {533#true} is VALID [2022-02-20 20:01:17,417 INFO L290 TraceCheckUtils]: 2: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {533#true} {534#false} #2080#return; {534#false} is VALID [2022-02-20 20:01:17,418 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 47 [2022-02-20 20:01:17,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:17,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {533#true} havoc ~__retres1~2; {533#true} is VALID [2022-02-20 20:01:17,429 INFO L290 TraceCheckUtils]: 1: Hoare triple {533#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {533#true} is VALID [2022-02-20 20:01:17,429 INFO L290 TraceCheckUtils]: 2: Hoare triple {533#true} #res := ~__retres1~2; {533#true} is VALID [2022-02-20 20:01:17,430 INFO L290 TraceCheckUtils]: 3: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,430 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {533#true} {534#false} #2082#return; {534#false} is VALID [2022-02-20 20:01:17,430 INFO L290 TraceCheckUtils]: 0: Hoare triple {533#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; {533#true} is VALID [2022-02-20 20:01:17,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {533#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {533#true} is VALID [2022-02-20 20:01:17,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {533#true} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,432 INFO L290 TraceCheckUtils]: 3: Hoare triple {535#(= ~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; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,433 INFO L272 TraceCheckUtils]: 4: Hoare triple {535#(= ~q_read_ev~0 2)} call update_channels1(); {573#(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:17,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {573#(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); {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:17,434 INFO L290 TraceCheckUtils]: 6: Hoare triple {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} assume true; {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:17,435 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {574#(= |old(~q_read_ev~0)| ~q_read_ev~0)} {535#(= ~q_read_ev~0 2)} #2074#return; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {535#(= ~q_read_ev~0 2)} assume { :begin_inline_init_threads1 } true; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,436 INFO L290 TraceCheckUtils]: 9: Hoare triple {535#(= ~q_read_ev~0 2)} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,438 INFO L290 TraceCheckUtils]: 10: Hoare triple {535#(= ~q_read_ev~0 2)} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {535#(= ~q_read_ev~0 2)} assume { :end_inline_init_threads1 } true; {535#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:17,440 INFO L272 TraceCheckUtils]: 12: Hoare triple {535#(= ~q_read_ev~0 2)} call fire_delta_events1(); {575#(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:17,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {575#(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; {576#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:17,441 INFO L290 TraceCheckUtils]: 14: Hoare triple {576#(= |old(~q_read_ev~0)| 0)} assume !(0 == ~q_write_ev~0); {576#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:17,441 INFO L290 TraceCheckUtils]: 15: Hoare triple {576#(= |old(~q_read_ev~0)| 0)} assume true; {576#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:17,442 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {576#(= |old(~q_read_ev~0)| 0)} {535#(= ~q_read_ev~0 2)} #2076#return; {534#false} is VALID [2022-02-20 20:01:17,442 INFO L272 TraceCheckUtils]: 17: Hoare triple {534#false} call activate_threads1(); {577#(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:17,442 INFO L290 TraceCheckUtils]: 18: Hoare triple {577#(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; {533#true} is VALID [2022-02-20 20:01:17,442 INFO L272 TraceCheckUtils]: 19: Hoare triple {533#true} call #t~ret8 := is_do_write_p_triggered(); {533#true} is VALID [2022-02-20 20:01:17,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {533#true} havoc ~__retres1~0; {533#true} is VALID [2022-02-20 20:01:17,443 INFO L290 TraceCheckUtils]: 21: Hoare triple {533#true} assume 1 == ~p_dw_pc~0; {533#true} is VALID [2022-02-20 20:01:17,443 INFO L290 TraceCheckUtils]: 22: Hoare triple {533#true} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {533#true} is VALID [2022-02-20 20:01:17,443 INFO L290 TraceCheckUtils]: 23: Hoare triple {533#true} #res := ~__retres1~0; {533#true} is VALID [2022-02-20 20:01:17,444 INFO L290 TraceCheckUtils]: 24: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,444 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {533#true} {533#true} #2070#return; {533#true} is VALID [2022-02-20 20:01:17,444 INFO L290 TraceCheckUtils]: 26: Hoare triple {533#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {533#true} is VALID [2022-02-20 20:01:17,444 INFO L290 TraceCheckUtils]: 27: Hoare triple {533#true} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {533#true} is VALID [2022-02-20 20:01:17,445 INFO L272 TraceCheckUtils]: 28: Hoare triple {533#true} call #t~ret9 := is_do_read_c_triggered(); {533#true} is VALID [2022-02-20 20:01:17,445 INFO L290 TraceCheckUtils]: 29: Hoare triple {533#true} havoc ~__retres1~1; {533#true} is VALID [2022-02-20 20:01:17,445 INFO L290 TraceCheckUtils]: 30: Hoare triple {533#true} assume 1 == ~c_dr_pc~0; {533#true} is VALID [2022-02-20 20:01:17,445 INFO L290 TraceCheckUtils]: 31: Hoare triple {533#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {533#true} is VALID [2022-02-20 20:01:17,445 INFO L290 TraceCheckUtils]: 32: Hoare triple {533#true} #res := ~__retres1~1; {533#true} is VALID [2022-02-20 20:01:17,446 INFO L290 TraceCheckUtils]: 33: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,446 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {533#true} {533#true} #2072#return; {533#true} is VALID [2022-02-20 20:01:17,446 INFO L290 TraceCheckUtils]: 35: Hoare triple {533#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {533#true} is VALID [2022-02-20 20:01:17,446 INFO L290 TraceCheckUtils]: 36: Hoare triple {533#true} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {533#true} is VALID [2022-02-20 20:01:17,447 INFO L290 TraceCheckUtils]: 37: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,447 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {533#true} {534#false} #2078#return; {534#false} is VALID [2022-02-20 20:01:17,447 INFO L272 TraceCheckUtils]: 39: Hoare triple {534#false} call reset_delta_events1(); {575#(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:17,447 INFO L290 TraceCheckUtils]: 40: Hoare triple {575#(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;~q_read_ev~0 := 2; {533#true} is VALID [2022-02-20 20:01:17,448 INFO L290 TraceCheckUtils]: 41: Hoare triple {533#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {533#true} is VALID [2022-02-20 20:01:17,448 INFO L290 TraceCheckUtils]: 42: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,448 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {533#true} {534#false} #2080#return; {534#false} is VALID [2022-02-20 20:01:17,448 INFO L290 TraceCheckUtils]: 44: Hoare triple {534#false} assume !false; {534#false} is VALID [2022-02-20 20:01:17,449 INFO L290 TraceCheckUtils]: 45: Hoare triple {534#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; {534#false} is VALID [2022-02-20 20:01:17,449 INFO L290 TraceCheckUtils]: 46: Hoare triple {534#false} assume !false; {534#false} is VALID [2022-02-20 20:01:17,449 INFO L272 TraceCheckUtils]: 47: Hoare triple {534#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {533#true} is VALID [2022-02-20 20:01:17,449 INFO L290 TraceCheckUtils]: 48: Hoare triple {533#true} havoc ~__retres1~2; {533#true} is VALID [2022-02-20 20:01:17,450 INFO L290 TraceCheckUtils]: 49: Hoare triple {533#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {533#true} is VALID [2022-02-20 20:01:17,450 INFO L290 TraceCheckUtils]: 50: Hoare triple {533#true} #res := ~__retres1~2; {533#true} is VALID [2022-02-20 20:01:17,450 INFO L290 TraceCheckUtils]: 51: Hoare triple {533#true} assume true; {533#true} is VALID [2022-02-20 20:01:17,453 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {533#true} {534#false} #2082#return; {534#false} is VALID [2022-02-20 20:01:17,454 INFO L290 TraceCheckUtils]: 53: Hoare triple {534#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; {534#false} is VALID [2022-02-20 20:01:17,454 INFO L290 TraceCheckUtils]: 54: Hoare triple {534#false} assume 0 != eval1_~tmp___1~0#1; {534#false} is VALID [2022-02-20 20:01:17,454 INFO L290 TraceCheckUtils]: 55: Hoare triple {534#false} assume !(0 == ~p_dw_st~0); {534#false} is VALID [2022-02-20 20:01:17,461 INFO L290 TraceCheckUtils]: 56: Hoare triple {534#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; {534#false} is VALID [2022-02-20 20:01:17,462 INFO L290 TraceCheckUtils]: 57: Hoare triple {534#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; {534#false} is VALID [2022-02-20 20:01:17,462 INFO L290 TraceCheckUtils]: 58: Hoare triple {534#false} assume !(0 == ~c_dr_pc~0); {534#false} is VALID [2022-02-20 20:01:17,462 INFO L290 TraceCheckUtils]: 59: Hoare triple {534#false} assume 2 == ~c_dr_pc~0; {534#false} is VALID [2022-02-20 20:01:17,462 INFO L290 TraceCheckUtils]: 60: Hoare triple {534#false} do_read_c_~a~0#1 := ~a_t~0; {534#false} is VALID [2022-02-20 20:01:17,463 INFO L290 TraceCheckUtils]: 61: Hoare triple {534#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; {534#false} is VALID [2022-02-20 20:01:17,463 INFO L290 TraceCheckUtils]: 62: Hoare triple {534#false} assume !(~p_last_write~0 == ~c_last_read~0); {534#false} is VALID [2022-02-20 20:01:17,463 INFO L272 TraceCheckUtils]: 63: Hoare triple {534#false} call error1(); {534#false} is VALID [2022-02-20 20:01:17,463 INFO L290 TraceCheckUtils]: 64: Hoare triple {534#false} assume !false; {534#false} is VALID [2022-02-20 20:01:17,464 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:17,465 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:17,466 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [126543909] [2022-02-20 20:01:17,466 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [126543909] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:17,467 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:17,467 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 20:01:17,468 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [557294775] [2022-02-20 20:01:17,469 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:17,474 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,476 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:17,479 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:17,548 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:17,548 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 20:01:17,548 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:17,569 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 20:01:17,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 20:01:17,577 INFO L87 Difference]: Start difference. First operand has 530 states, 467 states have (on average 1.6445396145610278) internal successors, (768), 475 states have internal predecessors, (768), 45 states have call successors, (45), 15 states have call predecessors, (45), 15 states have return successors, (45), 43 states have call predecessors, (45), 45 states have call successors, (45) 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:21,906 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:21,907 INFO L93 Difference]: Finished difference Result 1181 states and 1901 transitions. [2022-02-20 20:01:21,907 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 20:01:21,907 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:21,908 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:21,909 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:21,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 1901 transitions. [2022-02-20 20:01:21,946 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:21,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 1901 transitions. [2022-02-20 20:01:21,975 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 1901 transitions. [2022-02-20 20:01:23,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1901 edges. 1901 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:23,381 INFO L225 Difference]: With dead ends: 1181 [2022-02-20 20:01:23,382 INFO L226 Difference]: Without dead ends: 670 [2022-02-20 20:01:23,393 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:23,397 INFO L933 BasicCegarLoop]: 816 mSDtfsCounter, 1720 mSDsluCounter, 1529 mSDsCounter, 0 mSdLazyCounter, 1111 mSolverCounterSat, 282 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1727 SdHoareTripleChecker+Valid, 2345 SdHoareTripleChecker+Invalid, 1393 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 282 IncrementalHoareTripleChecker+Valid, 1111 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:23,399 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1727 Valid, 2345 Invalid, 1393 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [282 Valid, 1111 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-02-20 20:01:23,415 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 670 states. [2022-02-20 20:01:23,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 670 to 631. [2022-02-20 20:01:23,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:23,512 INFO L82 GeneralOperation]: Start isEquivalent. First operand 670 states. Second operand has 631 states, 549 states have (on average 1.53551912568306) internal successors, (843), 556 states have internal predecessors, (843), 58 states have call successors, (58), 22 states have call predecessors, (58), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:23,515 INFO L74 IsIncluded]: Start isIncluded. First operand 670 states. Second operand has 631 states, 549 states have (on average 1.53551912568306) internal successors, (843), 556 states have internal predecessors, (843), 58 states have call successors, (58), 22 states have call predecessors, (58), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:23,524 INFO L87 Difference]: Start difference. First operand 670 states. Second operand has 631 states, 549 states have (on average 1.53551912568306) internal successors, (843), 556 states have internal predecessors, (843), 58 states have call successors, (58), 22 states have call predecessors, (58), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:23,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:23,565 INFO L93 Difference]: Finished difference Result 670 states and 1016 transitions. [2022-02-20 20:01:23,565 INFO L276 IsEmpty]: Start isEmpty. Operand 670 states and 1016 transitions. [2022-02-20 20:01:23,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:23,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:23,578 INFO L74 IsIncluded]: Start isIncluded. First operand has 631 states, 549 states have (on average 1.53551912568306) internal successors, (843), 556 states have internal predecessors, (843), 58 states have call successors, (58), 22 states have call predecessors, (58), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) Second operand 670 states. [2022-02-20 20:01:23,582 INFO L87 Difference]: Start difference. First operand has 631 states, 549 states have (on average 1.53551912568306) internal successors, (843), 556 states have internal predecessors, (843), 58 states have call successors, (58), 22 states have call predecessors, (58), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) Second operand 670 states. [2022-02-20 20:01:23,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:23,632 INFO L93 Difference]: Finished difference Result 670 states and 1016 transitions. [2022-02-20 20:01:23,632 INFO L276 IsEmpty]: Start isEmpty. Operand 670 states and 1016 transitions. [2022-02-20 20:01:23,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:23,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:23,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:23,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:23,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 631 states, 549 states have (on average 1.53551912568306) internal successors, (843), 556 states have internal predecessors, (843), 58 states have call successors, (58), 22 states have call predecessors, (58), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:23,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 631 states to 631 states and 960 transitions. [2022-02-20 20:01:23,673 INFO L78 Accepts]: Start accepts. Automaton has 631 states and 960 transitions. Word has length 65 [2022-02-20 20:01:23,674 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:23,674 INFO L470 AbstractCegarLoop]: Abstraction has 631 states and 960 transitions. [2022-02-20 20:01:23,674 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:23,674 INFO L276 IsEmpty]: Start isEmpty. Operand 631 states and 960 transitions. [2022-02-20 20:01:23,676 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-02-20 20:01:23,676 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:23,677 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:23,677 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 20:01:23,677 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:23,678 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:23,678 INFO L85 PathProgramCache]: Analyzing trace with hash 1575212190, now seen corresponding path program 1 times [2022-02-20 20:01:23,678 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:23,678 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [671940324] [2022-02-20 20:01:23,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:23,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:23,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,740 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:23,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,754 INFO L290 TraceCheckUtils]: 0: Hoare triple {4374#(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); {4375#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:23,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {4375#(not (= |old(~q_req_up~0)| 1))} assume true; {4375#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:23,755 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4375#(not (= |old(~q_req_up~0)| 1))} {4335#(= ~q_req_up~0 ~p_dw_pc~0)} #2074#return; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,761 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:23,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,767 INFO L290 TraceCheckUtils]: 0: Hoare triple {4376#(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); {4332#true} is VALID [2022-02-20 20:01:23,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {4332#true} assume !(0 == ~q_write_ev~0); {4332#true} is VALID [2022-02-20 20:01:23,767 INFO L290 TraceCheckUtils]: 2: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,768 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4332#true} {4339#(not (= ~p_dw_pc~0 1))} #2076#return; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,774 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:23,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,803 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:23,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,814 INFO L290 TraceCheckUtils]: 0: Hoare triple {4332#true} havoc ~__retres1~0; {4332#true} is VALID [2022-02-20 20:01:23,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {4332#true} assume 1 == ~p_dw_pc~0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,821 INFO L290 TraceCheckUtils]: 3: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} #res := ~__retres1~0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,822 INFO L290 TraceCheckUtils]: 4: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,822 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} {4332#true} #2070#return; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,822 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 10 [2022-02-20 20:01:23,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,832 INFO L290 TraceCheckUtils]: 0: Hoare triple {4332#true} havoc ~__retres1~1; {4332#true} is VALID [2022-02-20 20:01:23,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {4332#true} assume 1 == ~c_dr_pc~0; {4332#true} is VALID [2022-02-20 20:01:23,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {4332#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {4332#true} is VALID [2022-02-20 20:01:23,833 INFO L290 TraceCheckUtils]: 3: Hoare triple {4332#true} #res := ~__retres1~1; {4332#true} is VALID [2022-02-20 20:01:23,833 INFO L290 TraceCheckUtils]: 4: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,834 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4332#true} {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} #2072#return; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,834 INFO L290 TraceCheckUtils]: 0: Hoare triple {4377#(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; {4332#true} is VALID [2022-02-20 20:01:23,834 INFO L272 TraceCheckUtils]: 1: Hoare triple {4332#true} call #t~ret8 := is_do_write_p_triggered(); {4332#true} is VALID [2022-02-20 20:01:23,835 INFO L290 TraceCheckUtils]: 2: Hoare triple {4332#true} havoc ~__retres1~0; {4332#true} is VALID [2022-02-20 20:01:23,835 INFO L290 TraceCheckUtils]: 3: Hoare triple {4332#true} assume 1 == ~p_dw_pc~0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,836 INFO L290 TraceCheckUtils]: 4: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,836 INFO L290 TraceCheckUtils]: 5: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} #res := ~__retres1~0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,836 INFO L290 TraceCheckUtils]: 6: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,840 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} {4332#true} #2070#return; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,841 INFO L290 TraceCheckUtils]: 8: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,841 INFO L272 TraceCheckUtils]: 10: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} call #t~ret9 := is_do_read_c_triggered(); {4332#true} is VALID [2022-02-20 20:01:23,842 INFO L290 TraceCheckUtils]: 11: Hoare triple {4332#true} havoc ~__retres1~1; {4332#true} is VALID [2022-02-20 20:01:23,842 INFO L290 TraceCheckUtils]: 12: Hoare triple {4332#true} assume 1 == ~c_dr_pc~0; {4332#true} is VALID [2022-02-20 20:01:23,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {4332#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {4332#true} is VALID [2022-02-20 20:01:23,842 INFO L290 TraceCheckUtils]: 14: Hoare triple {4332#true} #res := ~__retres1~1; {4332#true} is VALID [2022-02-20 20:01:23,842 INFO L290 TraceCheckUtils]: 15: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,843 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4332#true} {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} #2072#return; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,843 INFO L290 TraceCheckUtils]: 17: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,844 INFO L290 TraceCheckUtils]: 19: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,845 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} {4339#(not (= ~p_dw_pc~0 1))} #2078#return; {4333#false} is VALID [2022-02-20 20:01:23,845 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2022-02-20 20:01:23,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,853 INFO L290 TraceCheckUtils]: 0: Hoare triple {4376#(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); {4332#true} is VALID [2022-02-20 20:01:23,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {4332#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {4332#true} is VALID [2022-02-20 20:01:23,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,854 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4332#true} {4333#false} #2080#return; {4333#false} is VALID [2022-02-20 20:01:23,854 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 47 [2022-02-20 20:01:23,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:23,862 INFO L290 TraceCheckUtils]: 0: Hoare triple {4332#true} havoc ~__retres1~2; {4332#true} is VALID [2022-02-20 20:01:23,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {4332#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {4332#true} is VALID [2022-02-20 20:01:23,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {4332#true} #res := ~__retres1~2; {4332#true} is VALID [2022-02-20 20:01:23,862 INFO L290 TraceCheckUtils]: 3: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,863 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {4332#true} {4333#false} #2082#return; {4333#false} is VALID [2022-02-20 20:01:23,864 INFO L290 TraceCheckUtils]: 0: Hoare triple {4332#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; {4334#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:23,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {4334#(= ~q_req_up~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {4334#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:23,865 INFO L290 TraceCheckUtils]: 2: Hoare triple {4334#(= ~q_req_up~0 0)} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {4335#(= ~q_req_up~0 ~p_dw_pc~0)} is VALID [2022-02-20 20:01:23,865 INFO L290 TraceCheckUtils]: 3: Hoare triple {4335#(= ~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; {4335#(= ~q_req_up~0 ~p_dw_pc~0)} is VALID [2022-02-20 20:01:23,866 INFO L272 TraceCheckUtils]: 4: Hoare triple {4335#(= ~q_req_up~0 ~p_dw_pc~0)} call update_channels1(); {4374#(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:23,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {4374#(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); {4375#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:23,867 INFO L290 TraceCheckUtils]: 6: Hoare triple {4375#(not (= |old(~q_req_up~0)| 1))} assume true; {4375#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:23,867 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {4375#(not (= |old(~q_req_up~0)| 1))} {4335#(= ~q_req_up~0 ~p_dw_pc~0)} #2074#return; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {4339#(not (= ~p_dw_pc~0 1))} assume { :begin_inline_init_threads1 } true; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {4339#(not (= ~p_dw_pc~0 1))} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,868 INFO L290 TraceCheckUtils]: 10: Hoare triple {4339#(not (= ~p_dw_pc~0 1))} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,869 INFO L290 TraceCheckUtils]: 11: Hoare triple {4339#(not (= ~p_dw_pc~0 1))} assume { :end_inline_init_threads1 } true; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,869 INFO L272 TraceCheckUtils]: 12: Hoare triple {4339#(not (= ~p_dw_pc~0 1))} call fire_delta_events1(); {4376#(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:23,869 INFO L290 TraceCheckUtils]: 13: Hoare triple {4376#(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); {4332#true} is VALID [2022-02-20 20:01:23,870 INFO L290 TraceCheckUtils]: 14: Hoare triple {4332#true} assume !(0 == ~q_write_ev~0); {4332#true} is VALID [2022-02-20 20:01:23,870 INFO L290 TraceCheckUtils]: 15: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,871 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4332#true} {4339#(not (= ~p_dw_pc~0 1))} #2076#return; {4339#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:23,871 INFO L272 TraceCheckUtils]: 17: Hoare triple {4339#(not (= ~p_dw_pc~0 1))} call activate_threads1(); {4377#(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:23,872 INFO L290 TraceCheckUtils]: 18: Hoare triple {4377#(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; {4332#true} is VALID [2022-02-20 20:01:23,872 INFO L272 TraceCheckUtils]: 19: Hoare triple {4332#true} call #t~ret8 := is_do_write_p_triggered(); {4332#true} is VALID [2022-02-20 20:01:23,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {4332#true} havoc ~__retres1~0; {4332#true} is VALID [2022-02-20 20:01:23,874 INFO L290 TraceCheckUtils]: 21: Hoare triple {4332#true} assume 1 == ~p_dw_pc~0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,874 INFO L290 TraceCheckUtils]: 22: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,875 INFO L290 TraceCheckUtils]: 23: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} #res := ~__retres1~0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,884 INFO L290 TraceCheckUtils]: 24: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,887 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} {4332#true} #2070#return; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,888 INFO L290 TraceCheckUtils]: 26: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,889 INFO L290 TraceCheckUtils]: 27: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,889 INFO L272 TraceCheckUtils]: 28: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} call #t~ret9 := is_do_read_c_triggered(); {4332#true} is VALID [2022-02-20 20:01:23,889 INFO L290 TraceCheckUtils]: 29: Hoare triple {4332#true} havoc ~__retres1~1; {4332#true} is VALID [2022-02-20 20:01:23,889 INFO L290 TraceCheckUtils]: 30: Hoare triple {4332#true} assume 1 == ~c_dr_pc~0; {4332#true} is VALID [2022-02-20 20:01:23,889 INFO L290 TraceCheckUtils]: 31: Hoare triple {4332#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {4332#true} is VALID [2022-02-20 20:01:23,890 INFO L290 TraceCheckUtils]: 32: Hoare triple {4332#true} #res := ~__retres1~1; {4332#true} is VALID [2022-02-20 20:01:23,890 INFO L290 TraceCheckUtils]: 33: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,890 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {4332#true} {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} #2072#return; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,891 INFO L290 TraceCheckUtils]: 35: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,894 INFO L290 TraceCheckUtils]: 36: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,895 INFO L290 TraceCheckUtils]: 37: Hoare triple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:23,898 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4384#(= (+ (- 1) ~p_dw_pc~0) 0)} {4339#(not (= ~p_dw_pc~0 1))} #2078#return; {4333#false} is VALID [2022-02-20 20:01:23,898 INFO L272 TraceCheckUtils]: 39: Hoare triple {4333#false} call reset_delta_events1(); {4376#(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:23,898 INFO L290 TraceCheckUtils]: 40: Hoare triple {4376#(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); {4332#true} is VALID [2022-02-20 20:01:23,898 INFO L290 TraceCheckUtils]: 41: Hoare triple {4332#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {4332#true} is VALID [2022-02-20 20:01:23,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,899 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4332#true} {4333#false} #2080#return; {4333#false} is VALID [2022-02-20 20:01:23,899 INFO L290 TraceCheckUtils]: 44: Hoare triple {4333#false} assume !false; {4333#false} is VALID [2022-02-20 20:01:23,899 INFO L290 TraceCheckUtils]: 45: Hoare triple {4333#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; {4333#false} is VALID [2022-02-20 20:01:23,899 INFO L290 TraceCheckUtils]: 46: Hoare triple {4333#false} assume !false; {4333#false} is VALID [2022-02-20 20:01:23,899 INFO L272 TraceCheckUtils]: 47: Hoare triple {4333#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {4332#true} is VALID [2022-02-20 20:01:23,899 INFO L290 TraceCheckUtils]: 48: Hoare triple {4332#true} havoc ~__retres1~2; {4332#true} is VALID [2022-02-20 20:01:23,900 INFO L290 TraceCheckUtils]: 49: Hoare triple {4332#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {4332#true} is VALID [2022-02-20 20:01:23,900 INFO L290 TraceCheckUtils]: 50: Hoare triple {4332#true} #res := ~__retres1~2; {4332#true} is VALID [2022-02-20 20:01:23,900 INFO L290 TraceCheckUtils]: 51: Hoare triple {4332#true} assume true; {4332#true} is VALID [2022-02-20 20:01:23,900 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {4332#true} {4333#false} #2082#return; {4333#false} is VALID [2022-02-20 20:01:23,902 INFO L290 TraceCheckUtils]: 53: Hoare triple {4333#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; {4333#false} is VALID [2022-02-20 20:01:23,902 INFO L290 TraceCheckUtils]: 54: Hoare triple {4333#false} assume 0 != eval1_~tmp___1~0#1; {4333#false} is VALID [2022-02-20 20:01:23,902 INFO L290 TraceCheckUtils]: 55: Hoare triple {4333#false} assume !(0 == ~p_dw_st~0); {4333#false} is VALID [2022-02-20 20:01:23,902 INFO L290 TraceCheckUtils]: 56: Hoare triple {4333#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; {4333#false} is VALID [2022-02-20 20:01:23,903 INFO L290 TraceCheckUtils]: 57: Hoare triple {4333#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; {4333#false} is VALID [2022-02-20 20:01:23,903 INFO L290 TraceCheckUtils]: 58: Hoare triple {4333#false} assume !(0 == ~c_dr_pc~0); {4333#false} is VALID [2022-02-20 20:01:23,903 INFO L290 TraceCheckUtils]: 59: Hoare triple {4333#false} assume 2 == ~c_dr_pc~0; {4333#false} is VALID [2022-02-20 20:01:23,903 INFO L290 TraceCheckUtils]: 60: Hoare triple {4333#false} do_read_c_~a~0#1 := ~a_t~0; {4333#false} is VALID [2022-02-20 20:01:23,903 INFO L290 TraceCheckUtils]: 61: Hoare triple {4333#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; {4333#false} is VALID [2022-02-20 20:01:23,903 INFO L290 TraceCheckUtils]: 62: Hoare triple {4333#false} assume !(~p_last_write~0 == ~c_last_read~0); {4333#false} is VALID [2022-02-20 20:01:23,904 INFO L272 TraceCheckUtils]: 63: Hoare triple {4333#false} call error1(); {4333#false} is VALID [2022-02-20 20:01:23,904 INFO L290 TraceCheckUtils]: 64: Hoare triple {4333#false} assume !false; {4333#false} is VALID [2022-02-20 20:01:23,904 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:23,904 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:23,905 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [671940324] [2022-02-20 20:01:23,905 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [671940324] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:23,905 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:23,905 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 20:01:23,906 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1284654654] [2022-02-20 20:01:23,906 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:23,907 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:23,907 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:23,908 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:23,953 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:23,953 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:01:23,953 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:23,954 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:01:23,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:01:23,956 INFO L87 Difference]: Start difference. First operand 631 states and 960 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:31,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:31,514 INFO L93 Difference]: Finished difference Result 1664 states and 2420 transitions. [2022-02-20 20:01:31,514 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-02-20 20:01:31,515 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:31,515 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:31,515 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:31,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1608 transitions. [2022-02-20 20:01:31,536 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:31,556 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1608 transitions. [2022-02-20 20:01:31,556 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 1608 transitions. [2022-02-20 20:01:32,960 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1608 edges. 1608 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:33,086 INFO L225 Difference]: With dead ends: 1664 [2022-02-20 20:01:33,087 INFO L226 Difference]: Without dead ends: 1443 [2022-02-20 20:01:33,088 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:33,090 INFO L933 BasicCegarLoop]: 938 mSDtfsCounter, 4059 mSDsluCounter, 2489 mSDsCounter, 0 mSdLazyCounter, 1934 mSolverCounterSat, 674 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4079 SdHoareTripleChecker+Valid, 3427 SdHoareTripleChecker+Invalid, 2608 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 674 IncrementalHoareTripleChecker+Valid, 1934 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:33,090 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4079 Valid, 3427 Invalid, 2608 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [674 Valid, 1934 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-02-20 20:01:33,092 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1443 states. [2022-02-20 20:01:33,158 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1443 to 1304. [2022-02-20 20:01:33,158 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:33,163 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1443 states. Second operand has 1304 states, 1092 states have (on average 1.4487179487179487) internal successors, (1582), 1107 states have internal predecessors, (1582), 129 states have call successors, (129), 75 states have call predecessors, (129), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:33,167 INFO L74 IsIncluded]: Start isIncluded. First operand 1443 states. Second operand has 1304 states, 1092 states have (on average 1.4487179487179487) internal successors, (1582), 1107 states have internal predecessors, (1582), 129 states have call successors, (129), 75 states have call predecessors, (129), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:33,172 INFO L87 Difference]: Start difference. First operand 1443 states. Second operand has 1304 states, 1092 states have (on average 1.4487179487179487) internal successors, (1582), 1107 states have internal predecessors, (1582), 129 states have call successors, (129), 75 states have call predecessors, (129), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:33,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:33,259 INFO L93 Difference]: Finished difference Result 1443 states and 2030 transitions. [2022-02-20 20:01:33,259 INFO L276 IsEmpty]: Start isEmpty. Operand 1443 states and 2030 transitions. [2022-02-20 20:01:33,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:33,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:33,267 INFO L74 IsIncluded]: Start isIncluded. First operand has 1304 states, 1092 states have (on average 1.4487179487179487) internal successors, (1582), 1107 states have internal predecessors, (1582), 129 states have call successors, (129), 75 states have call predecessors, (129), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) Second operand 1443 states. [2022-02-20 20:01:33,271 INFO L87 Difference]: Start difference. First operand has 1304 states, 1092 states have (on average 1.4487179487179487) internal successors, (1582), 1107 states have internal predecessors, (1582), 129 states have call successors, (129), 75 states have call predecessors, (129), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) Second operand 1443 states. [2022-02-20 20:01:33,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:33,384 INFO L93 Difference]: Finished difference Result 1443 states and 2030 transitions. [2022-02-20 20:01:33,384 INFO L276 IsEmpty]: Start isEmpty. Operand 1443 states and 2030 transitions. [2022-02-20 20:01:33,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:33,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:33,388 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:33,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:33,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1304 states, 1092 states have (on average 1.4487179487179487) internal successors, (1582), 1107 states have internal predecessors, (1582), 129 states have call successors, (129), 75 states have call predecessors, (129), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:33,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1304 states to 1304 states and 1850 transitions. [2022-02-20 20:01:33,517 INFO L78 Accepts]: Start accepts. Automaton has 1304 states and 1850 transitions. Word has length 65 [2022-02-20 20:01:33,518 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:33,519 INFO L470 AbstractCegarLoop]: Abstraction has 1304 states and 1850 transitions. [2022-02-20 20:01:33,519 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:33,519 INFO L276 IsEmpty]: Start isEmpty. Operand 1304 states and 1850 transitions. [2022-02-20 20:01:33,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-02-20 20:01:33,520 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:33,520 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:33,520 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 20:01:33,521 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:33,521 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:33,521 INFO L85 PathProgramCache]: Analyzing trace with hash -74351947, now seen corresponding path program 1 times [2022-02-20 20:01:33,521 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:33,521 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [585286307] [2022-02-20 20:01:33,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:33,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:33,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,597 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:33,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,611 INFO L290 TraceCheckUtils]: 0: Hoare triple {11341#(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); {11301#true} is VALID [2022-02-20 20:01:33,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,611 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {11301#true} {11301#true} #2074#return; {11301#true} is VALID [2022-02-20 20:01:33,615 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:33,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,622 INFO L290 TraceCheckUtils]: 0: Hoare triple {11342#(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); {11301#true} is VALID [2022-02-20 20:01:33,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume !(0 == ~q_write_ev~0); {11301#true} is VALID [2022-02-20 20:01:33,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,623 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11301#true} {11301#true} #2076#return; {11301#true} is VALID [2022-02-20 20:01:33,627 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:33,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,686 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:33,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,723 INFO L290 TraceCheckUtils]: 0: Hoare triple {11301#true} havoc ~__retres1~0; {11301#true} is VALID [2022-02-20 20:01:33,724 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume !(1 == ~p_dw_pc~0); {11301#true} is VALID [2022-02-20 20:01:33,724 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} assume !(2 == ~p_dw_pc~0); {11301#true} is VALID [2022-02-20 20:01:33,724 INFO L290 TraceCheckUtils]: 3: Hoare triple {11301#true} ~__retres1~0 := 0; {11359#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} is VALID [2022-02-20 20:01:33,725 INFO L290 TraceCheckUtils]: 4: Hoare triple {11359#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} #res := ~__retres1~0; {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:33,725 INFO L290 TraceCheckUtils]: 5: Hoare triple {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} assume true; {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:33,726 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} {11301#true} #2070#return; {11351#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} is VALID [2022-02-20 20:01:33,726 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:33,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,732 INFO L290 TraceCheckUtils]: 0: Hoare triple {11301#true} havoc ~__retres1~1; {11301#true} is VALID [2022-02-20 20:01:33,732 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume 1 == ~c_dr_pc~0; {11301#true} is VALID [2022-02-20 20:01:33,732 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {11301#true} is VALID [2022-02-20 20:01:33,732 INFO L290 TraceCheckUtils]: 3: Hoare triple {11301#true} #res := ~__retres1~1; {11301#true} is VALID [2022-02-20 20:01:33,733 INFO L290 TraceCheckUtils]: 4: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,733 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {11301#true} {11302#false} #2072#return; {11302#false} is VALID [2022-02-20 20:01:33,733 INFO L290 TraceCheckUtils]: 0: Hoare triple {11343#(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; {11301#true} is VALID [2022-02-20 20:01:33,737 INFO L272 TraceCheckUtils]: 1: Hoare triple {11301#true} call #t~ret8 := is_do_write_p_triggered(); {11301#true} is VALID [2022-02-20 20:01:33,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} havoc ~__retres1~0; {11301#true} is VALID [2022-02-20 20:01:33,744 INFO L290 TraceCheckUtils]: 3: Hoare triple {11301#true} assume !(1 == ~p_dw_pc~0); {11301#true} is VALID [2022-02-20 20:01:33,744 INFO L290 TraceCheckUtils]: 4: Hoare triple {11301#true} assume !(2 == ~p_dw_pc~0); {11301#true} is VALID [2022-02-20 20:01:33,745 INFO L290 TraceCheckUtils]: 5: Hoare triple {11301#true} ~__retres1~0 := 0; {11359#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} is VALID [2022-02-20 20:01:33,746 INFO L290 TraceCheckUtils]: 6: Hoare triple {11359#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} #res := ~__retres1~0; {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:33,749 INFO L290 TraceCheckUtils]: 7: Hoare triple {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} assume true; {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:33,750 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} {11301#true} #2070#return; {11351#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} is VALID [2022-02-20 20:01:33,750 INFO L290 TraceCheckUtils]: 9: Hoare triple {11351#(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; {11352#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} is VALID [2022-02-20 20:01:33,751 INFO L290 TraceCheckUtils]: 10: Hoare triple {11352#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {11302#false} is VALID [2022-02-20 20:01:33,751 INFO L272 TraceCheckUtils]: 11: Hoare triple {11302#false} call #t~ret9 := is_do_read_c_triggered(); {11301#true} is VALID [2022-02-20 20:01:33,751 INFO L290 TraceCheckUtils]: 12: Hoare triple {11301#true} havoc ~__retres1~1; {11301#true} is VALID [2022-02-20 20:01:33,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {11301#true} assume 1 == ~c_dr_pc~0; {11301#true} is VALID [2022-02-20 20:01:33,752 INFO L290 TraceCheckUtils]: 14: Hoare triple {11301#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {11301#true} is VALID [2022-02-20 20:01:33,752 INFO L290 TraceCheckUtils]: 15: Hoare triple {11301#true} #res := ~__retres1~1; {11301#true} is VALID [2022-02-20 20:01:33,752 INFO L290 TraceCheckUtils]: 16: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,752 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {11301#true} {11302#false} #2072#return; {11302#false} is VALID [2022-02-20 20:01:33,752 INFO L290 TraceCheckUtils]: 18: Hoare triple {11302#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {11302#false} is VALID [2022-02-20 20:01:33,752 INFO L290 TraceCheckUtils]: 19: Hoare triple {11302#false} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {11302#false} is VALID [2022-02-20 20:01:33,752 INFO L290 TraceCheckUtils]: 20: Hoare triple {11302#false} assume true; {11302#false} is VALID [2022-02-20 20:01:33,753 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11302#false} {11301#true} #2078#return; {11302#false} is VALID [2022-02-20 20:01:33,753 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-20 20:01:33,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,758 INFO L290 TraceCheckUtils]: 0: Hoare triple {11342#(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); {11301#true} is VALID [2022-02-20 20:01:33,758 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {11301#true} is VALID [2022-02-20 20:01:33,758 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,759 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11301#true} {11302#false} #2080#return; {11302#false} is VALID [2022-02-20 20:01:33,759 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-20 20:01:33,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:33,768 INFO L290 TraceCheckUtils]: 0: Hoare triple {11301#true} havoc ~__retres1~2; {11301#true} is VALID [2022-02-20 20:01:33,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {11301#true} is VALID [2022-02-20 20:01:33,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} #res := ~__retres1~2; {11301#true} is VALID [2022-02-20 20:01:33,768 INFO L290 TraceCheckUtils]: 3: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,769 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {11301#true} {11302#false} #2082#return; {11302#false} is VALID [2022-02-20 20:01:33,770 INFO L290 TraceCheckUtils]: 0: Hoare triple {11301#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; {11301#true} is VALID [2022-02-20 20:01:33,770 INFO L290 TraceCheckUtils]: 1: Hoare triple {11301#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {11301#true} is VALID [2022-02-20 20:01:33,771 INFO L290 TraceCheckUtils]: 2: Hoare triple {11301#true} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {11301#true} is VALID [2022-02-20 20:01:33,771 INFO L290 TraceCheckUtils]: 3: Hoare triple {11301#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; {11301#true} is VALID [2022-02-20 20:01:33,772 INFO L272 TraceCheckUtils]: 4: Hoare triple {11301#true} call update_channels1(); {11341#(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:33,772 INFO L290 TraceCheckUtils]: 5: Hoare triple {11341#(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); {11301#true} is VALID [2022-02-20 20:01:33,773 INFO L290 TraceCheckUtils]: 6: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,773 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {11301#true} {11301#true} #2074#return; {11301#true} is VALID [2022-02-20 20:01:33,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {11301#true} assume { :begin_inline_init_threads1 } true; {11301#true} is VALID [2022-02-20 20:01:33,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {11301#true} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {11301#true} is VALID [2022-02-20 20:01:33,773 INFO L290 TraceCheckUtils]: 10: Hoare triple {11301#true} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {11301#true} is VALID [2022-02-20 20:01:33,773 INFO L290 TraceCheckUtils]: 11: Hoare triple {11301#true} assume { :end_inline_init_threads1 } true; {11301#true} is VALID [2022-02-20 20:01:33,774 INFO L272 TraceCheckUtils]: 12: Hoare triple {11301#true} call fire_delta_events1(); {11342#(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:33,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {11342#(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); {11301#true} is VALID [2022-02-20 20:01:33,774 INFO L290 TraceCheckUtils]: 14: Hoare triple {11301#true} assume !(0 == ~q_write_ev~0); {11301#true} is VALID [2022-02-20 20:01:33,774 INFO L290 TraceCheckUtils]: 15: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,774 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11301#true} {11301#true} #2076#return; {11301#true} is VALID [2022-02-20 20:01:33,775 INFO L272 TraceCheckUtils]: 17: Hoare triple {11301#true} call activate_threads1(); {11343#(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:33,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {11343#(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; {11301#true} is VALID [2022-02-20 20:01:33,775 INFO L272 TraceCheckUtils]: 19: Hoare triple {11301#true} call #t~ret8 := is_do_write_p_triggered(); {11301#true} is VALID [2022-02-20 20:01:33,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {11301#true} havoc ~__retres1~0; {11301#true} is VALID [2022-02-20 20:01:33,775 INFO L290 TraceCheckUtils]: 21: Hoare triple {11301#true} assume !(1 == ~p_dw_pc~0); {11301#true} is VALID [2022-02-20 20:01:33,776 INFO L290 TraceCheckUtils]: 22: Hoare triple {11301#true} assume !(2 == ~p_dw_pc~0); {11301#true} is VALID [2022-02-20 20:01:33,776 INFO L290 TraceCheckUtils]: 23: Hoare triple {11301#true} ~__retres1~0 := 0; {11359#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} is VALID [2022-02-20 20:01:33,776 INFO L290 TraceCheckUtils]: 24: Hoare triple {11359#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} #res := ~__retres1~0; {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:33,777 INFO L290 TraceCheckUtils]: 25: Hoare triple {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} assume true; {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:33,778 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11360#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} {11301#true} #2070#return; {11351#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} is VALID [2022-02-20 20:01:33,779 INFO L290 TraceCheckUtils]: 27: Hoare triple {11351#(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; {11352#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} is VALID [2022-02-20 20:01:33,780 INFO L290 TraceCheckUtils]: 28: Hoare triple {11352#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {11302#false} is VALID [2022-02-20 20:01:33,780 INFO L272 TraceCheckUtils]: 29: Hoare triple {11302#false} call #t~ret9 := is_do_read_c_triggered(); {11301#true} is VALID [2022-02-20 20:01:33,780 INFO L290 TraceCheckUtils]: 30: Hoare triple {11301#true} havoc ~__retres1~1; {11301#true} is VALID [2022-02-20 20:01:33,780 INFO L290 TraceCheckUtils]: 31: Hoare triple {11301#true} assume 1 == ~c_dr_pc~0; {11301#true} is VALID [2022-02-20 20:01:33,780 INFO L290 TraceCheckUtils]: 32: Hoare triple {11301#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {11301#true} is VALID [2022-02-20 20:01:33,781 INFO L290 TraceCheckUtils]: 33: Hoare triple {11301#true} #res := ~__retres1~1; {11301#true} is VALID [2022-02-20 20:01:33,781 INFO L290 TraceCheckUtils]: 34: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,781 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {11301#true} {11302#false} #2072#return; {11302#false} is VALID [2022-02-20 20:01:33,781 INFO L290 TraceCheckUtils]: 36: Hoare triple {11302#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {11302#false} is VALID [2022-02-20 20:01:33,781 INFO L290 TraceCheckUtils]: 37: Hoare triple {11302#false} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {11302#false} is VALID [2022-02-20 20:01:33,781 INFO L290 TraceCheckUtils]: 38: Hoare triple {11302#false} assume true; {11302#false} is VALID [2022-02-20 20:01:33,781 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11302#false} {11301#true} #2078#return; {11302#false} is VALID [2022-02-20 20:01:33,782 INFO L272 TraceCheckUtils]: 40: Hoare triple {11302#false} call reset_delta_events1(); {11342#(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:33,782 INFO L290 TraceCheckUtils]: 41: Hoare triple {11342#(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); {11301#true} is VALID [2022-02-20 20:01:33,782 INFO L290 TraceCheckUtils]: 42: Hoare triple {11301#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {11301#true} is VALID [2022-02-20 20:01:33,782 INFO L290 TraceCheckUtils]: 43: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,782 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {11301#true} {11302#false} #2080#return; {11302#false} is VALID [2022-02-20 20:01:33,782 INFO L290 TraceCheckUtils]: 45: Hoare triple {11302#false} assume !false; {11302#false} is VALID [2022-02-20 20:01:33,782 INFO L290 TraceCheckUtils]: 46: Hoare triple {11302#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; {11302#false} is VALID [2022-02-20 20:01:33,783 INFO L290 TraceCheckUtils]: 47: Hoare triple {11302#false} assume !false; {11302#false} is VALID [2022-02-20 20:01:33,783 INFO L272 TraceCheckUtils]: 48: Hoare triple {11302#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {11301#true} is VALID [2022-02-20 20:01:33,783 INFO L290 TraceCheckUtils]: 49: Hoare triple {11301#true} havoc ~__retres1~2; {11301#true} is VALID [2022-02-20 20:01:33,783 INFO L290 TraceCheckUtils]: 50: Hoare triple {11301#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {11301#true} is VALID [2022-02-20 20:01:33,784 INFO L290 TraceCheckUtils]: 51: Hoare triple {11301#true} #res := ~__retres1~2; {11301#true} is VALID [2022-02-20 20:01:33,784 INFO L290 TraceCheckUtils]: 52: Hoare triple {11301#true} assume true; {11301#true} is VALID [2022-02-20 20:01:33,784 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11301#true} {11302#false} #2082#return; {11302#false} is VALID [2022-02-20 20:01:33,784 INFO L290 TraceCheckUtils]: 54: Hoare triple {11302#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; {11302#false} is VALID [2022-02-20 20:01:33,784 INFO L290 TraceCheckUtils]: 55: Hoare triple {11302#false} assume 0 != eval1_~tmp___1~0#1; {11302#false} is VALID [2022-02-20 20:01:33,784 INFO L290 TraceCheckUtils]: 56: Hoare triple {11302#false} assume !(0 == ~p_dw_st~0); {11302#false} is VALID [2022-02-20 20:01:33,784 INFO L290 TraceCheckUtils]: 57: Hoare triple {11302#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; {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L290 TraceCheckUtils]: 58: Hoare triple {11302#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; {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L290 TraceCheckUtils]: 59: Hoare triple {11302#false} assume !(0 == ~c_dr_pc~0); {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L290 TraceCheckUtils]: 60: Hoare triple {11302#false} assume 2 == ~c_dr_pc~0; {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L290 TraceCheckUtils]: 61: Hoare triple {11302#false} do_read_c_~a~0#1 := ~a_t~0; {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L290 TraceCheckUtils]: 62: Hoare triple {11302#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; {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L290 TraceCheckUtils]: 63: Hoare triple {11302#false} assume !(~p_last_write~0 == ~c_last_read~0); {11302#false} is VALID [2022-02-20 20:01:33,785 INFO L272 TraceCheckUtils]: 64: Hoare triple {11302#false} call error1(); {11302#false} is VALID [2022-02-20 20:01:33,786 INFO L290 TraceCheckUtils]: 65: Hoare triple {11302#false} assume !false; {11302#false} is VALID [2022-02-20 20:01:33,786 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:33,786 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:33,786 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [585286307] [2022-02-20 20:01:33,787 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [585286307] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:33,787 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:33,787 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 20:01:33,788 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1521253284] [2022-02-20 20:01:33,788 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:33,788 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,789 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:33,789 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:33,830 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:33,830 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 20:01:33,830 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:33,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 20:01:33,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 20:01:33,831 INFO L87 Difference]: Start difference. First operand 1304 states and 1850 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:38,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:38,625 INFO L93 Difference]: Finished difference Result 2330 states and 3244 transitions. [2022-02-20 20:01:38,625 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 20:01:38,625 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:38,625 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:38,625 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:38,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 984 transitions. [2022-02-20 20:01:38,634 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:38,641 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 984 transitions. [2022-02-20 20:01:38,641 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 984 transitions. [2022-02-20 20:01:39,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 984 edges. 984 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:39,460 INFO L225 Difference]: With dead ends: 2330 [2022-02-20 20:01:39,461 INFO L226 Difference]: Without dead ends: 1442 [2022-02-20 20:01:39,463 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:39,464 INFO L933 BasicCegarLoop]: 791 mSDtfsCounter, 1055 mSDsluCounter, 2360 mSDsCounter, 0 mSdLazyCounter, 1775 mSolverCounterSat, 157 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1056 SdHoareTripleChecker+Valid, 3151 SdHoareTripleChecker+Invalid, 1932 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 157 IncrementalHoareTripleChecker+Valid, 1775 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:39,464 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1056 Valid, 3151 Invalid, 1932 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [157 Valid, 1775 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-02-20 20:01:39,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1442 states. [2022-02-20 20:01:39,531 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1442 to 1334. [2022-02-20 20:01:39,532 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:39,535 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1442 states. Second operand has 1334 states, 1116 states have (on average 1.4363799283154122) internal successors, (1603), 1131 states have internal predecessors, (1603), 129 states have call successors, (129), 75 states have call predecessors, (129), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:39,537 INFO L74 IsIncluded]: Start isIncluded. First operand 1442 states. Second operand has 1334 states, 1116 states have (on average 1.4363799283154122) internal successors, (1603), 1131 states have internal predecessors, (1603), 129 states have call successors, (129), 75 states have call predecessors, (129), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:39,540 INFO L87 Difference]: Start difference. First operand 1442 states. Second operand has 1334 states, 1116 states have (on average 1.4363799283154122) internal successors, (1603), 1131 states have internal predecessors, (1603), 129 states have call successors, (129), 75 states have call predecessors, (129), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:39,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:39,647 INFO L93 Difference]: Finished difference Result 1442 states and 2025 transitions. [2022-02-20 20:01:39,647 INFO L276 IsEmpty]: Start isEmpty. Operand 1442 states and 2025 transitions. [2022-02-20 20:01:39,651 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:39,651 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:39,655 INFO L74 IsIncluded]: Start isIncluded. First operand has 1334 states, 1116 states have (on average 1.4363799283154122) internal successors, (1603), 1131 states have internal predecessors, (1603), 129 states have call successors, (129), 75 states have call predecessors, (129), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) Second operand 1442 states. [2022-02-20 20:01:39,657 INFO L87 Difference]: Start difference. First operand has 1334 states, 1116 states have (on average 1.4363799283154122) internal successors, (1603), 1131 states have internal predecessors, (1603), 129 states have call successors, (129), 75 states have call predecessors, (129), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) Second operand 1442 states. [2022-02-20 20:01:39,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:39,767 INFO L93 Difference]: Finished difference Result 1442 states and 2025 transitions. [2022-02-20 20:01:39,767 INFO L276 IsEmpty]: Start isEmpty. Operand 1442 states and 2025 transitions. [2022-02-20 20:01:39,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:39,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:39,772 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:39,772 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:39,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1334 states, 1116 states have (on average 1.4363799283154122) internal successors, (1603), 1131 states have internal predecessors, (1603), 129 states have call successors, (129), 75 states have call predecessors, (129), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:39,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1334 states to 1334 states and 1877 transitions. [2022-02-20 20:01:39,924 INFO L78 Accepts]: Start accepts. Automaton has 1334 states and 1877 transitions. Word has length 66 [2022-02-20 20:01:39,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:39,925 INFO L470 AbstractCegarLoop]: Abstraction has 1334 states and 1877 transitions. [2022-02-20 20:01:39,925 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:39,925 INFO L276 IsEmpty]: Start isEmpty. Operand 1334 states and 1877 transitions. [2022-02-20 20:01:39,926 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-02-20 20:01:39,926 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:39,926 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:39,926 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 20:01:39,926 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:39,927 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:39,927 INFO L85 PathProgramCache]: Analyzing trace with hash -1103711245, now seen corresponding path program 1 times [2022-02-20 20:01:39,927 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:39,927 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1546415387] [2022-02-20 20:01:39,928 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:39,928 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:39,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:39,999 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:40,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,016 INFO L290 TraceCheckUtils]: 0: Hoare triple {19183#(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); {19184#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:40,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {19184#(not (= |old(~q_req_up~0)| 1))} assume true; {19184#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:40,017 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {19184#(not (= |old(~q_req_up~0)| 1))} {19143#(= ~c_dr_pc~0 ~q_req_up~0)} #2074#return; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,023 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:40,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,035 INFO L290 TraceCheckUtils]: 0: Hoare triple {19185#(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); {19140#true} is VALID [2022-02-20 20:01:40,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {19140#true} assume !(0 == ~q_write_ev~0); {19140#true} is VALID [2022-02-20 20:01:40,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,036 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19140#true} {19147#(not (= ~c_dr_pc~0 1))} #2076#return; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,043 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:40,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,064 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:40,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,068 INFO L290 TraceCheckUtils]: 0: Hoare triple {19140#true} havoc ~__retres1~0; {19140#true} is VALID [2022-02-20 20:01:40,068 INFO L290 TraceCheckUtils]: 1: Hoare triple {19140#true} assume !(1 == ~p_dw_pc~0); {19140#true} is VALID [2022-02-20 20:01:40,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {19140#true} assume !(2 == ~p_dw_pc~0); {19140#true} is VALID [2022-02-20 20:01:40,069 INFO L290 TraceCheckUtils]: 3: Hoare triple {19140#true} ~__retres1~0 := 0; {19140#true} is VALID [2022-02-20 20:01:40,069 INFO L290 TraceCheckUtils]: 4: Hoare triple {19140#true} #res := ~__retres1~0; {19140#true} is VALID [2022-02-20 20:01:40,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,069 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {19140#true} {19140#true} #2070#return; {19140#true} is VALID [2022-02-20 20:01:40,069 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:40,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,075 INFO L290 TraceCheckUtils]: 0: Hoare triple {19140#true} havoc ~__retres1~1; {19140#true} is VALID [2022-02-20 20:01:40,075 INFO L290 TraceCheckUtils]: 1: Hoare triple {19140#true} assume 1 == ~c_dr_pc~0; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,075 INFO L290 TraceCheckUtils]: 2: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,076 INFO L290 TraceCheckUtils]: 3: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} #res := ~__retres1~1; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,076 INFO L290 TraceCheckUtils]: 4: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,076 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} {19140#true} #2072#return; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,077 INFO L290 TraceCheckUtils]: 0: Hoare triple {19186#(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; {19140#true} is VALID [2022-02-20 20:01:40,077 INFO L272 TraceCheckUtils]: 1: Hoare triple {19140#true} call #t~ret8 := is_do_write_p_triggered(); {19140#true} is VALID [2022-02-20 20:01:40,077 INFO L290 TraceCheckUtils]: 2: Hoare triple {19140#true} havoc ~__retres1~0; {19140#true} is VALID [2022-02-20 20:01:40,077 INFO L290 TraceCheckUtils]: 3: Hoare triple {19140#true} assume !(1 == ~p_dw_pc~0); {19140#true} is VALID [2022-02-20 20:01:40,077 INFO L290 TraceCheckUtils]: 4: Hoare triple {19140#true} assume !(2 == ~p_dw_pc~0); {19140#true} is VALID [2022-02-20 20:01:40,077 INFO L290 TraceCheckUtils]: 5: Hoare triple {19140#true} ~__retres1~0 := 0; {19140#true} is VALID [2022-02-20 20:01:40,078 INFO L290 TraceCheckUtils]: 6: Hoare triple {19140#true} #res := ~__retres1~0; {19140#true} is VALID [2022-02-20 20:01:40,078 INFO L290 TraceCheckUtils]: 7: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,078 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {19140#true} {19140#true} #2070#return; {19140#true} is VALID [2022-02-20 20:01:40,078 INFO L290 TraceCheckUtils]: 9: Hoare triple {19140#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {19140#true} is VALID [2022-02-20 20:01:40,078 INFO L290 TraceCheckUtils]: 10: Hoare triple {19140#true} assume !(0 != ~tmp~1); {19140#true} is VALID [2022-02-20 20:01:40,080 INFO L272 TraceCheckUtils]: 11: Hoare triple {19140#true} call #t~ret9 := is_do_read_c_triggered(); {19140#true} is VALID [2022-02-20 20:01:40,081 INFO L290 TraceCheckUtils]: 12: Hoare triple {19140#true} havoc ~__retres1~1; {19140#true} is VALID [2022-02-20 20:01:40,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {19140#true} assume 1 == ~c_dr_pc~0; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,083 INFO L290 TraceCheckUtils]: 14: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,084 INFO L290 TraceCheckUtils]: 15: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} #res := ~__retres1~1; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,084 INFO L290 TraceCheckUtils]: 16: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,085 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} {19140#true} #2072#return; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,085 INFO L290 TraceCheckUtils]: 18: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,086 INFO L290 TraceCheckUtils]: 19: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,086 INFO L290 TraceCheckUtils]: 20: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,086 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} {19147#(not (= ~c_dr_pc~0 1))} #2078#return; {19141#false} is VALID [2022-02-20 20:01:40,087 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-20 20:01:40,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,094 INFO L290 TraceCheckUtils]: 0: Hoare triple {19185#(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); {19140#true} is VALID [2022-02-20 20:01:40,094 INFO L290 TraceCheckUtils]: 1: Hoare triple {19140#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {19140#true} is VALID [2022-02-20 20:01:40,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19140#true} {19141#false} #2080#return; {19141#false} is VALID [2022-02-20 20:01:40,095 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-20 20:01:40,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:40,099 INFO L290 TraceCheckUtils]: 0: Hoare triple {19140#true} havoc ~__retres1~2; {19140#true} is VALID [2022-02-20 20:01:40,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {19140#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {19140#true} is VALID [2022-02-20 20:01:40,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {19140#true} #res := ~__retres1~2; {19140#true} is VALID [2022-02-20 20:01:40,099 INFO L290 TraceCheckUtils]: 3: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,100 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {19140#true} {19141#false} #2082#return; {19141#false} is VALID [2022-02-20 20:01:40,100 INFO L290 TraceCheckUtils]: 0: Hoare triple {19140#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; {19142#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:40,100 INFO L290 TraceCheckUtils]: 1: Hoare triple {19142#(= ~q_req_up~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {19142#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:40,101 INFO L290 TraceCheckUtils]: 2: Hoare triple {19142#(= ~q_req_up~0 0)} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {19143#(= ~c_dr_pc~0 ~q_req_up~0)} is VALID [2022-02-20 20:01:40,101 INFO L290 TraceCheckUtils]: 3: Hoare triple {19143#(= ~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; {19143#(= ~c_dr_pc~0 ~q_req_up~0)} is VALID [2022-02-20 20:01:40,102 INFO L272 TraceCheckUtils]: 4: Hoare triple {19143#(= ~c_dr_pc~0 ~q_req_up~0)} call update_channels1(); {19183#(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:40,102 INFO L290 TraceCheckUtils]: 5: Hoare triple {19183#(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); {19184#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:40,103 INFO L290 TraceCheckUtils]: 6: Hoare triple {19184#(not (= |old(~q_req_up~0)| 1))} assume true; {19184#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:40,103 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19184#(not (= |old(~q_req_up~0)| 1))} {19143#(= ~c_dr_pc~0 ~q_req_up~0)} #2074#return; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,103 INFO L290 TraceCheckUtils]: 8: Hoare triple {19147#(not (= ~c_dr_pc~0 1))} assume { :begin_inline_init_threads1 } true; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {19147#(not (= ~c_dr_pc~0 1))} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,104 INFO L290 TraceCheckUtils]: 10: Hoare triple {19147#(not (= ~c_dr_pc~0 1))} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,104 INFO L290 TraceCheckUtils]: 11: Hoare triple {19147#(not (= ~c_dr_pc~0 1))} assume { :end_inline_init_threads1 } true; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,105 INFO L272 TraceCheckUtils]: 12: Hoare triple {19147#(not (= ~c_dr_pc~0 1))} call fire_delta_events1(); {19185#(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:40,105 INFO L290 TraceCheckUtils]: 13: Hoare triple {19185#(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); {19140#true} is VALID [2022-02-20 20:01:40,105 INFO L290 TraceCheckUtils]: 14: Hoare triple {19140#true} assume !(0 == ~q_write_ev~0); {19140#true} is VALID [2022-02-20 20:01:40,105 INFO L290 TraceCheckUtils]: 15: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,106 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {19140#true} {19147#(not (= ~c_dr_pc~0 1))} #2076#return; {19147#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:40,106 INFO L272 TraceCheckUtils]: 17: Hoare triple {19147#(not (= ~c_dr_pc~0 1))} call activate_threads1(); {19186#(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:40,106 INFO L290 TraceCheckUtils]: 18: Hoare triple {19186#(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; {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L272 TraceCheckUtils]: 19: Hoare triple {19140#true} call #t~ret8 := is_do_write_p_triggered(); {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L290 TraceCheckUtils]: 20: Hoare triple {19140#true} havoc ~__retres1~0; {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L290 TraceCheckUtils]: 21: Hoare triple {19140#true} assume !(1 == ~p_dw_pc~0); {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L290 TraceCheckUtils]: 22: Hoare triple {19140#true} assume !(2 == ~p_dw_pc~0); {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L290 TraceCheckUtils]: 23: Hoare triple {19140#true} ~__retres1~0 := 0; {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {19140#true} #res := ~__retres1~0; {19140#true} is VALID [2022-02-20 20:01:40,107 INFO L290 TraceCheckUtils]: 25: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,108 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {19140#true} {19140#true} #2070#return; {19140#true} is VALID [2022-02-20 20:01:40,108 INFO L290 TraceCheckUtils]: 27: Hoare triple {19140#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {19140#true} is VALID [2022-02-20 20:01:40,108 INFO L290 TraceCheckUtils]: 28: Hoare triple {19140#true} assume !(0 != ~tmp~1); {19140#true} is VALID [2022-02-20 20:01:40,108 INFO L272 TraceCheckUtils]: 29: Hoare triple {19140#true} call #t~ret9 := is_do_read_c_triggered(); {19140#true} is VALID [2022-02-20 20:01:40,108 INFO L290 TraceCheckUtils]: 30: Hoare triple {19140#true} havoc ~__retres1~1; {19140#true} is VALID [2022-02-20 20:01:40,109 INFO L290 TraceCheckUtils]: 31: Hoare triple {19140#true} assume 1 == ~c_dr_pc~0; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,109 INFO L290 TraceCheckUtils]: 32: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,109 INFO L290 TraceCheckUtils]: 33: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} #res := ~__retres1~1; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,110 INFO L290 TraceCheckUtils]: 34: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,110 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} {19140#true} #2072#return; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,110 INFO L290 TraceCheckUtils]: 36: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,111 INFO L290 TraceCheckUtils]: 37: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,111 INFO L290 TraceCheckUtils]: 38: Hoare triple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:40,111 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19200#(= (+ (- 1) ~c_dr_pc~0) 0)} {19147#(not (= ~c_dr_pc~0 1))} #2078#return; {19141#false} is VALID [2022-02-20 20:01:40,112 INFO L272 TraceCheckUtils]: 40: Hoare triple {19141#false} call reset_delta_events1(); {19185#(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:40,112 INFO L290 TraceCheckUtils]: 41: Hoare triple {19185#(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); {19140#true} is VALID [2022-02-20 20:01:40,112 INFO L290 TraceCheckUtils]: 42: Hoare triple {19140#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {19140#true} is VALID [2022-02-20 20:01:40,112 INFO L290 TraceCheckUtils]: 43: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,112 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {19140#true} {19141#false} #2080#return; {19141#false} is VALID [2022-02-20 20:01:40,112 INFO L290 TraceCheckUtils]: 45: Hoare triple {19141#false} assume !false; {19141#false} is VALID [2022-02-20 20:01:40,112 INFO L290 TraceCheckUtils]: 46: Hoare triple {19141#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; {19141#false} is VALID [2022-02-20 20:01:40,113 INFO L290 TraceCheckUtils]: 47: Hoare triple {19141#false} assume !false; {19141#false} is VALID [2022-02-20 20:01:40,113 INFO L272 TraceCheckUtils]: 48: Hoare triple {19141#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {19140#true} is VALID [2022-02-20 20:01:40,113 INFO L290 TraceCheckUtils]: 49: Hoare triple {19140#true} havoc ~__retres1~2; {19140#true} is VALID [2022-02-20 20:01:40,113 INFO L290 TraceCheckUtils]: 50: Hoare triple {19140#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {19140#true} is VALID [2022-02-20 20:01:40,113 INFO L290 TraceCheckUtils]: 51: Hoare triple {19140#true} #res := ~__retres1~2; {19140#true} is VALID [2022-02-20 20:01:40,113 INFO L290 TraceCheckUtils]: 52: Hoare triple {19140#true} assume true; {19140#true} is VALID [2022-02-20 20:01:40,113 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {19140#true} {19141#false} #2082#return; {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 54: Hoare triple {19141#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; {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 55: Hoare triple {19141#false} assume 0 != eval1_~tmp___1~0#1; {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 56: Hoare triple {19141#false} assume !(0 == ~p_dw_st~0); {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 57: Hoare triple {19141#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; {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 58: Hoare triple {19141#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; {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 59: Hoare triple {19141#false} assume !(0 == ~c_dr_pc~0); {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 60: Hoare triple {19141#false} assume 2 == ~c_dr_pc~0; {19141#false} is VALID [2022-02-20 20:01:40,114 INFO L290 TraceCheckUtils]: 61: Hoare triple {19141#false} do_read_c_~a~0#1 := ~a_t~0; {19141#false} is VALID [2022-02-20 20:01:40,115 INFO L290 TraceCheckUtils]: 62: Hoare triple {19141#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; {19141#false} is VALID [2022-02-20 20:01:40,115 INFO L290 TraceCheckUtils]: 63: Hoare triple {19141#false} assume !(~p_last_write~0 == ~c_last_read~0); {19141#false} is VALID [2022-02-20 20:01:40,115 INFO L272 TraceCheckUtils]: 64: Hoare triple {19141#false} call error1(); {19141#false} is VALID [2022-02-20 20:01:40,115 INFO L290 TraceCheckUtils]: 65: Hoare triple {19141#false} assume !false; {19141#false} is VALID [2022-02-20 20:01:40,116 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:40,116 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:40,116 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1546415387] [2022-02-20 20:01:40,117 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1546415387] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:40,117 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:40,117 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 20:01:40,117 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [438214022] [2022-02-20 20:01:40,117 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:40,118 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:40,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:40,134 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:40,176 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:40,176 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:01:40,177 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:40,178 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:01:40,178 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:01:40,179 INFO L87 Difference]: Start difference. First operand 1334 states and 1877 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:47,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:47,520 INFO L93 Difference]: Finished difference Result 3672 states and 5064 transitions. [2022-02-20 20:01:47,521 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-02-20 20:01:47,521 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:47,521 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:47,521 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:47,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1597 transitions. [2022-02-20 20:01:47,536 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:47,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1597 transitions. [2022-02-20 20:01:47,549 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 1597 transitions. [2022-02-20 20:01:48,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1597 edges. 1597 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:48,869 INFO L225 Difference]: With dead ends: 3672 [2022-02-20 20:01:48,869 INFO L226 Difference]: Without dead ends: 1577 [2022-02-20 20:01:48,874 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:48,880 INFO L933 BasicCegarLoop]: 922 mSDtfsCounter, 4617 mSDsluCounter, 2073 mSDsCounter, 0 mSdLazyCounter, 1725 mSolverCounterSat, 800 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4637 SdHoareTripleChecker+Valid, 2995 SdHoareTripleChecker+Invalid, 2525 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 800 IncrementalHoareTripleChecker+Valid, 1725 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:48,880 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4637 Valid, 2995 Invalid, 2525 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [800 Valid, 1725 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-02-20 20:01:48,885 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1577 states. [2022-02-20 20:01:48,958 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1577 to 1422. [2022-02-20 20:01:48,958 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:48,963 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1577 states. Second operand has 1422 states, 1169 states have (on average 1.4029084687767321) internal successors, (1640), 1184 states have internal predecessors, (1640), 149 states have call successors, (149), 89 states have call predecessors, (149), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:48,965 INFO L74 IsIncluded]: Start isIncluded. First operand 1577 states. Second operand has 1422 states, 1169 states have (on average 1.4029084687767321) internal successors, (1640), 1184 states have internal predecessors, (1640), 149 states have call successors, (149), 89 states have call predecessors, (149), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:48,968 INFO L87 Difference]: Start difference. First operand 1577 states. Second operand has 1422 states, 1169 states have (on average 1.4029084687767321) internal successors, (1640), 1184 states have internal predecessors, (1640), 149 states have call successors, (149), 89 states have call predecessors, (149), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:49,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:49,094 INFO L93 Difference]: Finished difference Result 1577 states and 2151 transitions. [2022-02-20 20:01:49,095 INFO L276 IsEmpty]: Start isEmpty. Operand 1577 states and 2151 transitions. [2022-02-20 20:01:49,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:49,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:49,102 INFO L74 IsIncluded]: Start isIncluded. First operand has 1422 states, 1169 states have (on average 1.4029084687767321) internal successors, (1640), 1184 states have internal predecessors, (1640), 149 states have call successors, (149), 89 states have call predecessors, (149), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) Second operand 1577 states. [2022-02-20 20:01:49,104 INFO L87 Difference]: Start difference. First operand has 1422 states, 1169 states have (on average 1.4029084687767321) internal successors, (1640), 1184 states have internal predecessors, (1640), 149 states have call successors, (149), 89 states have call predecessors, (149), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) Second operand 1577 states. [2022-02-20 20:01:49,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:49,243 INFO L93 Difference]: Finished difference Result 1577 states and 2151 transitions. [2022-02-20 20:01:49,243 INFO L276 IsEmpty]: Start isEmpty. Operand 1577 states and 2151 transitions. [2022-02-20 20:01:49,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:49,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:49,247 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:49,248 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:49,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1422 states, 1169 states have (on average 1.4029084687767321) internal successors, (1640), 1184 states have internal predecessors, (1640), 149 states have call successors, (149), 89 states have call predecessors, (149), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:49,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1422 states to 1422 states and 1955 transitions. [2022-02-20 20:01:49,395 INFO L78 Accepts]: Start accepts. Automaton has 1422 states and 1955 transitions. Word has length 66 [2022-02-20 20:01:49,395 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:49,396 INFO L470 AbstractCegarLoop]: Abstraction has 1422 states and 1955 transitions. [2022-02-20 20:01:49,396 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:49,396 INFO L276 IsEmpty]: Start isEmpty. Operand 1422 states and 1955 transitions. [2022-02-20 20:01:49,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 20:01:49,397 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:49,398 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:49,398 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 20:01:49,398 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:49,399 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:49,399 INFO L85 PathProgramCache]: Analyzing trace with hash 1875323271, now seen corresponding path program 1 times [2022-02-20 20:01:49,399 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:49,400 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1158878542] [2022-02-20 20:01:49,400 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:49,401 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:49,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,459 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:49,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,464 INFO L290 TraceCheckUtils]: 0: Hoare triple {29273#(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); {29227#true} is VALID [2022-02-20 20:01:49,464 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,464 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {29227#true} {29227#true} #2074#return; {29227#true} is VALID [2022-02-20 20:01:49,468 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:49,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,472 INFO L290 TraceCheckUtils]: 0: Hoare triple {29274#(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); {29227#true} is VALID [2022-02-20 20:01:49,473 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume !(0 == ~q_write_ev~0); {29227#true} is VALID [2022-02-20 20:01:49,473 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29227#true} {29227#true} #2076#return; {29227#true} is VALID [2022-02-20 20:01:49,477 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:49,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,517 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:49,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,520 INFO L290 TraceCheckUtils]: 0: Hoare triple {29227#true} havoc ~__retres1~0; {29227#true} is VALID [2022-02-20 20:01:49,520 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume !(1 == ~p_dw_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} assume !(2 == ~p_dw_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,521 INFO L290 TraceCheckUtils]: 3: Hoare triple {29227#true} ~__retres1~0 := 0; {29227#true} is VALID [2022-02-20 20:01:49,521 INFO L290 TraceCheckUtils]: 4: Hoare triple {29227#true} #res := ~__retres1~0; {29227#true} is VALID [2022-02-20 20:01:49,521 INFO L290 TraceCheckUtils]: 5: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,521 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {29227#true} {29227#true} #2070#return; {29227#true} is VALID [2022-02-20 20:01:49,521 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:49,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,556 INFO L290 TraceCheckUtils]: 0: Hoare triple {29227#true} havoc ~__retres1~1; {29227#true} is VALID [2022-02-20 20:01:49,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume !(1 == ~c_dr_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} assume !(2 == ~c_dr_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,557 INFO L290 TraceCheckUtils]: 3: Hoare triple {29227#true} ~__retres1~1 := 0; {29292#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} is VALID [2022-02-20 20:01:49,558 INFO L290 TraceCheckUtils]: 4: Hoare triple {29292#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} #res := ~__retres1~1; {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:49,558 INFO L290 TraceCheckUtils]: 5: Hoare triple {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} assume true; {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:49,559 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} {29227#true} #2072#return; {29290#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} is VALID [2022-02-20 20:01:49,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {29275#(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; {29227#true} is VALID [2022-02-20 20:01:49,559 INFO L272 TraceCheckUtils]: 1: Hoare triple {29227#true} call #t~ret8 := is_do_write_p_triggered(); {29227#true} is VALID [2022-02-20 20:01:49,559 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} havoc ~__retres1~0; {29227#true} is VALID [2022-02-20 20:01:49,560 INFO L290 TraceCheckUtils]: 3: Hoare triple {29227#true} assume !(1 == ~p_dw_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,560 INFO L290 TraceCheckUtils]: 4: Hoare triple {29227#true} assume !(2 == ~p_dw_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {29227#true} ~__retres1~0 := 0; {29227#true} is VALID [2022-02-20 20:01:49,561 INFO L290 TraceCheckUtils]: 6: Hoare triple {29227#true} #res := ~__retres1~0; {29227#true} is VALID [2022-02-20 20:01:49,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,561 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {29227#true} {29227#true} #2070#return; {29227#true} is VALID [2022-02-20 20:01:49,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {29227#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {29227#true} is VALID [2022-02-20 20:01:49,561 INFO L290 TraceCheckUtils]: 10: Hoare triple {29227#true} assume !(0 != ~tmp~1); {29227#true} is VALID [2022-02-20 20:01:49,562 INFO L272 TraceCheckUtils]: 11: Hoare triple {29227#true} call #t~ret9 := is_do_read_c_triggered(); {29227#true} is VALID [2022-02-20 20:01:49,562 INFO L290 TraceCheckUtils]: 12: Hoare triple {29227#true} havoc ~__retres1~1; {29227#true} is VALID [2022-02-20 20:01:49,562 INFO L290 TraceCheckUtils]: 13: Hoare triple {29227#true} assume !(1 == ~c_dr_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,562 INFO L290 TraceCheckUtils]: 14: Hoare triple {29227#true} assume !(2 == ~c_dr_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {29227#true} ~__retres1~1 := 0; {29292#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} is VALID [2022-02-20 20:01:49,563 INFO L290 TraceCheckUtils]: 16: Hoare triple {29292#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} #res := ~__retres1~1; {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:49,563 INFO L290 TraceCheckUtils]: 17: Hoare triple {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} assume true; {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:49,564 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} {29227#true} #2072#return; {29290#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} is VALID [2022-02-20 20:01:49,565 INFO L290 TraceCheckUtils]: 19: Hoare triple {29290#(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; {29291#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} is VALID [2022-02-20 20:01:49,565 INFO L290 TraceCheckUtils]: 20: Hoare triple {29291#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {29228#false} is VALID [2022-02-20 20:01:49,565 INFO L290 TraceCheckUtils]: 21: Hoare triple {29228#false} assume true; {29228#false} is VALID [2022-02-20 20:01:49,565 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {29228#false} {29227#true} #2078#return; {29228#false} is VALID [2022-02-20 20:01:49,566 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 20:01:49,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,570 INFO L290 TraceCheckUtils]: 0: Hoare triple {29274#(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); {29227#true} is VALID [2022-02-20 20:01:49,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {29227#true} is VALID [2022-02-20 20:01:49,571 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,571 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29227#true} {29228#false} #2080#return; {29228#false} is VALID [2022-02-20 20:01:49,571 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 20:01:49,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,583 INFO L290 TraceCheckUtils]: 0: Hoare triple {29227#true} havoc ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,583 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29227#true} is VALID [2022-02-20 20:01:49,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} #res := ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,584 INFO L290 TraceCheckUtils]: 3: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,584 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {29227#true} {29228#false} #2082#return; {29228#false} is VALID [2022-02-20 20:01:49,584 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 65 [2022-02-20 20:01:49,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:49,588 INFO L290 TraceCheckUtils]: 0: Hoare triple {29227#true} havoc ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29227#true} is VALID [2022-02-20 20:01:49,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} #res := ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,589 INFO L290 TraceCheckUtils]: 3: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,589 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {29227#true} {29228#false} #2082#return; {29228#false} is VALID [2022-02-20 20:01:49,590 INFO L290 TraceCheckUtils]: 0: Hoare triple {29227#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; {29227#true} is VALID [2022-02-20 20:01:49,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {29227#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {29227#true} is VALID [2022-02-20 20:01:49,590 INFO L290 TraceCheckUtils]: 2: Hoare triple {29227#true} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {29227#true} is VALID [2022-02-20 20:01:49,590 INFO L290 TraceCheckUtils]: 3: Hoare triple {29227#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; {29227#true} is VALID [2022-02-20 20:01:49,591 INFO L272 TraceCheckUtils]: 4: Hoare triple {29227#true} call update_channels1(); {29273#(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:49,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {29273#(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); {29227#true} is VALID [2022-02-20 20:01:49,591 INFO L290 TraceCheckUtils]: 6: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,591 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {29227#true} {29227#true} #2074#return; {29227#true} is VALID [2022-02-20 20:01:49,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {29227#true} assume { :begin_inline_init_threads1 } true; {29227#true} is VALID [2022-02-20 20:01:49,591 INFO L290 TraceCheckUtils]: 9: Hoare triple {29227#true} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {29227#true} is VALID [2022-02-20 20:01:49,592 INFO L290 TraceCheckUtils]: 10: Hoare triple {29227#true} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {29227#true} is VALID [2022-02-20 20:01:49,592 INFO L290 TraceCheckUtils]: 11: Hoare triple {29227#true} assume { :end_inline_init_threads1 } true; {29227#true} is VALID [2022-02-20 20:01:49,592 INFO L272 TraceCheckUtils]: 12: Hoare triple {29227#true} call fire_delta_events1(); {29274#(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:49,592 INFO L290 TraceCheckUtils]: 13: Hoare triple {29274#(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); {29227#true} is VALID [2022-02-20 20:01:49,592 INFO L290 TraceCheckUtils]: 14: Hoare triple {29227#true} assume !(0 == ~q_write_ev~0); {29227#true} is VALID [2022-02-20 20:01:49,593 INFO L290 TraceCheckUtils]: 15: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,593 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {29227#true} {29227#true} #2076#return; {29227#true} is VALID [2022-02-20 20:01:49,593 INFO L272 TraceCheckUtils]: 17: Hoare triple {29227#true} call activate_threads1(); {29275#(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:49,593 INFO L290 TraceCheckUtils]: 18: Hoare triple {29275#(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; {29227#true} is VALID [2022-02-20 20:01:49,593 INFO L272 TraceCheckUtils]: 19: Hoare triple {29227#true} call #t~ret8 := is_do_write_p_triggered(); {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {29227#true} havoc ~__retres1~0; {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L290 TraceCheckUtils]: 21: Hoare triple {29227#true} assume !(1 == ~p_dw_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L290 TraceCheckUtils]: 22: Hoare triple {29227#true} assume !(2 == ~p_dw_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {29227#true} ~__retres1~0 := 0; {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {29227#true} #res := ~__retres1~0; {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,594 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29227#true} {29227#true} #2070#return; {29227#true} is VALID [2022-02-20 20:01:49,595 INFO L290 TraceCheckUtils]: 27: Hoare triple {29227#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {29227#true} is VALID [2022-02-20 20:01:49,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {29227#true} assume !(0 != ~tmp~1); {29227#true} is VALID [2022-02-20 20:01:49,595 INFO L272 TraceCheckUtils]: 29: Hoare triple {29227#true} call #t~ret9 := is_do_read_c_triggered(); {29227#true} is VALID [2022-02-20 20:01:49,595 INFO L290 TraceCheckUtils]: 30: Hoare triple {29227#true} havoc ~__retres1~1; {29227#true} is VALID [2022-02-20 20:01:49,595 INFO L290 TraceCheckUtils]: 31: Hoare triple {29227#true} assume !(1 == ~c_dr_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,595 INFO L290 TraceCheckUtils]: 32: Hoare triple {29227#true} assume !(2 == ~c_dr_pc~0); {29227#true} is VALID [2022-02-20 20:01:49,596 INFO L290 TraceCheckUtils]: 33: Hoare triple {29227#true} ~__retres1~1 := 0; {29292#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} is VALID [2022-02-20 20:01:49,596 INFO L290 TraceCheckUtils]: 34: Hoare triple {29292#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} #res := ~__retres1~1; {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:49,597 INFO L290 TraceCheckUtils]: 35: Hoare triple {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} assume true; {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:49,597 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {29293#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} {29227#true} #2072#return; {29290#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} is VALID [2022-02-20 20:01:49,598 INFO L290 TraceCheckUtils]: 37: Hoare triple {29290#(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; {29291#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} is VALID [2022-02-20 20:01:49,598 INFO L290 TraceCheckUtils]: 38: Hoare triple {29291#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {29228#false} is VALID [2022-02-20 20:01:49,598 INFO L290 TraceCheckUtils]: 39: Hoare triple {29228#false} assume true; {29228#false} is VALID [2022-02-20 20:01:49,599 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {29228#false} {29227#true} #2078#return; {29228#false} is VALID [2022-02-20 20:01:49,599 INFO L272 TraceCheckUtils]: 41: Hoare triple {29228#false} call reset_delta_events1(); {29274#(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:49,599 INFO L290 TraceCheckUtils]: 42: Hoare triple {29274#(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); {29227#true} is VALID [2022-02-20 20:01:49,599 INFO L290 TraceCheckUtils]: 43: Hoare triple {29227#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {29227#true} is VALID [2022-02-20 20:01:49,599 INFO L290 TraceCheckUtils]: 44: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,599 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {29227#true} {29228#false} #2080#return; {29228#false} is VALID [2022-02-20 20:01:49,599 INFO L290 TraceCheckUtils]: 46: Hoare triple {29228#false} assume !false; {29228#false} is VALID [2022-02-20 20:01:49,600 INFO L290 TraceCheckUtils]: 47: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,600 INFO L290 TraceCheckUtils]: 48: Hoare triple {29228#false} assume !false; {29228#false} is VALID [2022-02-20 20:01:49,600 INFO L272 TraceCheckUtils]: 49: Hoare triple {29228#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {29227#true} is VALID [2022-02-20 20:01:49,600 INFO L290 TraceCheckUtils]: 50: Hoare triple {29227#true} havoc ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,600 INFO L290 TraceCheckUtils]: 51: Hoare triple {29227#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29227#true} is VALID [2022-02-20 20:01:49,600 INFO L290 TraceCheckUtils]: 52: Hoare triple {29227#true} #res := ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,600 INFO L290 TraceCheckUtils]: 53: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,601 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {29227#true} {29228#false} #2082#return; {29228#false} is VALID [2022-02-20 20:01:49,601 INFO L290 TraceCheckUtils]: 55: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,601 INFO L290 TraceCheckUtils]: 56: Hoare triple {29228#false} assume 0 != eval1_~tmp___1~0#1; {29228#false} is VALID [2022-02-20 20:01:49,601 INFO L290 TraceCheckUtils]: 57: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,601 INFO L290 TraceCheckUtils]: 58: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,601 INFO L290 TraceCheckUtils]: 59: Hoare triple {29228#false} assume 0 == ~p_dw_pc~0; {29228#false} is VALID [2022-02-20 20:01:49,602 INFO L290 TraceCheckUtils]: 60: Hoare triple {29228#false} assume !false; {29228#false} is VALID [2022-02-20 20:01:49,602 INFO L290 TraceCheckUtils]: 61: Hoare triple {29228#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {29228#false} is VALID [2022-02-20 20:01:49,602 INFO L290 TraceCheckUtils]: 62: Hoare triple {29228#false} assume { :end_inline_do_write_p } true; {29228#false} is VALID [2022-02-20 20:01:49,602 INFO L290 TraceCheckUtils]: 63: Hoare triple {29228#false} assume !(0 == ~c_dr_st~0); {29228#false} is VALID [2022-02-20 20:01:49,602 INFO L290 TraceCheckUtils]: 64: Hoare triple {29228#false} assume !false; {29228#false} is VALID [2022-02-20 20:01:49,602 INFO L272 TraceCheckUtils]: 65: Hoare triple {29228#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {29227#true} is VALID [2022-02-20 20:01:49,602 INFO L290 TraceCheckUtils]: 66: Hoare triple {29227#true} havoc ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 67: Hoare triple {29227#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29227#true} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 68: Hoare triple {29227#true} #res := ~__retres1~2; {29227#true} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 69: Hoare triple {29227#true} assume true; {29227#true} is VALID [2022-02-20 20:01:49,603 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {29227#true} {29228#false} #2082#return; {29228#false} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 71: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 72: Hoare triple {29228#false} assume 0 != eval1_~tmp___1~0#1; {29228#false} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 73: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,603 INFO L290 TraceCheckUtils]: 74: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,604 INFO L290 TraceCheckUtils]: 75: Hoare triple {29228#false} assume !(0 == ~p_dw_pc~0); {29228#false} is VALID [2022-02-20 20:01:49,604 INFO L290 TraceCheckUtils]: 76: Hoare triple {29228#false} assume 1 == ~p_dw_pc~0; {29228#false} is VALID [2022-02-20 20:01:49,604 INFO L290 TraceCheckUtils]: 77: Hoare triple {29228#false} assume !(0 == ~q_free~0); {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 78: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 79: Hoare triple {29228#false} assume !false; {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 80: Hoare triple {29228#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 81: Hoare triple {29228#false} assume { :end_inline_do_write_p } true; {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 82: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 83: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,605 INFO L290 TraceCheckUtils]: 84: Hoare triple {29228#false} assume !(0 == ~c_dr_pc~0); {29228#false} is VALID [2022-02-20 20:01:49,606 INFO L290 TraceCheckUtils]: 85: Hoare triple {29228#false} assume 2 == ~c_dr_pc~0; {29228#false} is VALID [2022-02-20 20:01:49,606 INFO L290 TraceCheckUtils]: 86: Hoare triple {29228#false} do_read_c_~a~0#1 := ~a_t~0; {29228#false} is VALID [2022-02-20 20:01:49,606 INFO L290 TraceCheckUtils]: 87: Hoare triple {29228#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; {29228#false} is VALID [2022-02-20 20:01:49,606 INFO L290 TraceCheckUtils]: 88: Hoare triple {29228#false} assume !(~p_last_write~0 == ~c_last_read~0); {29228#false} is VALID [2022-02-20 20:01:49,606 INFO L272 TraceCheckUtils]: 89: Hoare triple {29228#false} call error1(); {29228#false} is VALID [2022-02-20 20:01:49,606 INFO L290 TraceCheckUtils]: 90: Hoare triple {29228#false} assume !false; {29228#false} is VALID [2022-02-20 20:01:49,607 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:49,607 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:49,607 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1158878542] [2022-02-20 20:01:49,607 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1158878542] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:49,609 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:49,609 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 20:01:49,609 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [393720684] [2022-02-20 20:01:49,609 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:49,610 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,610 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:49,610 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:49,657 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:49,658 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 20:01:49,658 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:49,658 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 20:01:49,659 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 20:01:49,659 INFO L87 Difference]: Start difference. First operand 1422 states and 1955 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:54,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:54,167 INFO L93 Difference]: Finished difference Result 2599 states and 3506 transitions. [2022-02-20 20:01:54,167 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 20:01:54,167 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:54,167 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:54,167 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:54,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 969 transitions. [2022-02-20 20:01:54,174 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:54,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 969 transitions. [2022-02-20 20:01:54,181 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 969 transitions. [2022-02-20 20:01:54,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 969 edges. 969 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:54,971 INFO L225 Difference]: With dead ends: 2599 [2022-02-20 20:01:54,971 INFO L226 Difference]: Without dead ends: 1593 [2022-02-20 20:01:54,973 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:54,974 INFO L933 BasicCegarLoop]: 778 mSDtfsCounter, 703 mSDsluCounter, 2683 mSDsCounter, 0 mSdLazyCounter, 1803 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 705 SdHoareTripleChecker+Valid, 3461 SdHoareTripleChecker+Invalid, 1911 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 108 IncrementalHoareTripleChecker+Valid, 1803 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:54,974 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [705 Valid, 3461 Invalid, 1911 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [108 Valid, 1803 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-02-20 20:01:54,976 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1593 states. [2022-02-20 20:01:55,062 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1593 to 1462. [2022-02-20 20:01:55,062 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:55,065 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1593 states. Second operand has 1462 states, 1201 states have (on average 1.3896752706078268) internal successors, (1669), 1216 states have internal predecessors, (1669), 149 states have call successors, (149), 89 states have call predecessors, (149), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:55,067 INFO L74 IsIncluded]: Start isIncluded. First operand 1593 states. Second operand has 1462 states, 1201 states have (on average 1.3896752706078268) internal successors, (1669), 1216 states have internal predecessors, (1669), 149 states have call successors, (149), 89 states have call predecessors, (149), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:55,068 INFO L87 Difference]: Start difference. First operand 1593 states. Second operand has 1462 states, 1201 states have (on average 1.3896752706078268) internal successors, (1669), 1216 states have internal predecessors, (1669), 149 states have call successors, (149), 89 states have call predecessors, (149), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:55,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:55,195 INFO L93 Difference]: Finished difference Result 1593 states and 2169 transitions. [2022-02-20 20:01:55,195 INFO L276 IsEmpty]: Start isEmpty. Operand 1593 states and 2169 transitions. [2022-02-20 20:01:55,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:55,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:55,202 INFO L74 IsIncluded]: Start isIncluded. First operand has 1462 states, 1201 states have (on average 1.3896752706078268) internal successors, (1669), 1216 states have internal predecessors, (1669), 149 states have call successors, (149), 89 states have call predecessors, (149), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) Second operand 1593 states. [2022-02-20 20:01:55,203 INFO L87 Difference]: Start difference. First operand has 1462 states, 1201 states have (on average 1.3896752706078268) internal successors, (1669), 1216 states have internal predecessors, (1669), 149 states have call successors, (149), 89 states have call predecessors, (149), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) Second operand 1593 states. [2022-02-20 20:01:55,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:55,335 INFO L93 Difference]: Finished difference Result 1593 states and 2169 transitions. [2022-02-20 20:01:55,335 INFO L276 IsEmpty]: Start isEmpty. Operand 1593 states and 2169 transitions. [2022-02-20 20:01:55,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:55,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:55,339 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:55,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:55,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1462 states, 1201 states have (on average 1.3896752706078268) internal successors, (1669), 1216 states have internal predecessors, (1669), 149 states have call successors, (149), 89 states have call predecessors, (149), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:55,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1462 states to 1462 states and 1992 transitions. [2022-02-20 20:01:55,488 INFO L78 Accepts]: Start accepts. Automaton has 1462 states and 1992 transitions. Word has length 91 [2022-02-20 20:01:55,488 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:55,488 INFO L470 AbstractCegarLoop]: Abstraction has 1462 states and 1992 transitions. [2022-02-20 20:01:55,488 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:55,488 INFO L276 IsEmpty]: Start isEmpty. Operand 1462 states and 1992 transitions. [2022-02-20 20:01:55,492 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 20:01:55,493 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:55,493 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:55,493 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 20:01:55,493 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:55,494 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:55,494 INFO L85 PathProgramCache]: Analyzing trace with hash -1975743351, now seen corresponding path program 1 times [2022-02-20 20:01:55,494 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:55,494 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [908422434] [2022-02-20 20:01:55,494 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:55,494 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:55,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,544 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:55,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,557 INFO L290 TraceCheckUtils]: 0: Hoare triple {37946#(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); {37947#(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:55,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37947#(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:55,558 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2074#return; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,558 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:55,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,567 INFO L290 TraceCheckUtils]: 0: Hoare triple {37947#(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); {37947#(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:55,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {37947#(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); {37947#(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:55,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37947#(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:55,569 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2076#return; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,573 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:55,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,582 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:55,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,585 INFO L290 TraceCheckUtils]: 0: Hoare triple {37899#true} havoc ~__retres1~0; {37899#true} is VALID [2022-02-20 20:01:55,585 INFO L290 TraceCheckUtils]: 1: Hoare triple {37899#true} assume !(1 == ~p_dw_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {37899#true} assume !(2 == ~p_dw_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,586 INFO L290 TraceCheckUtils]: 3: Hoare triple {37899#true} ~__retres1~0 := 0; {37899#true} is VALID [2022-02-20 20:01:55,586 INFO L290 TraceCheckUtils]: 4: Hoare triple {37899#true} #res := ~__retres1~0; {37899#true} is VALID [2022-02-20 20:01:55,586 INFO L290 TraceCheckUtils]: 5: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,586 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {37899#true} {37899#true} #2070#return; {37899#true} is VALID [2022-02-20 20:01:55,586 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:55,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,589 INFO L290 TraceCheckUtils]: 0: Hoare triple {37899#true} havoc ~__retres1~1; {37899#true} is VALID [2022-02-20 20:01:55,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {37899#true} assume !(1 == ~c_dr_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {37899#true} assume !(2 == ~c_dr_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,589 INFO L290 TraceCheckUtils]: 3: Hoare triple {37899#true} ~__retres1~1 := 0; {37899#true} is VALID [2022-02-20 20:01:55,590 INFO L290 TraceCheckUtils]: 4: Hoare triple {37899#true} #res := ~__retres1~1; {37899#true} is VALID [2022-02-20 20:01:55,590 INFO L290 TraceCheckUtils]: 5: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,590 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {37899#true} {37899#true} #2072#return; {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 0: Hoare triple {37948#(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; {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L272 TraceCheckUtils]: 1: Hoare triple {37899#true} call #t~ret8 := is_do_write_p_triggered(); {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 2: Hoare triple {37899#true} havoc ~__retres1~0; {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 3: Hoare triple {37899#true} assume !(1 == ~p_dw_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 4: Hoare triple {37899#true} assume !(2 == ~p_dw_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {37899#true} ~__retres1~0 := 0; {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 6: Hoare triple {37899#true} #res := ~__retres1~0; {37899#true} is VALID [2022-02-20 20:01:55,591 INFO L290 TraceCheckUtils]: 7: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {37899#true} {37899#true} #2070#return; {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L290 TraceCheckUtils]: 9: Hoare triple {37899#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L290 TraceCheckUtils]: 10: Hoare triple {37899#true} assume !(0 != ~tmp~1); {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L272 TraceCheckUtils]: 11: Hoare triple {37899#true} call #t~ret9 := is_do_read_c_triggered(); {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L290 TraceCheckUtils]: 12: Hoare triple {37899#true} havoc ~__retres1~1; {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L290 TraceCheckUtils]: 13: Hoare triple {37899#true} assume !(1 == ~c_dr_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,592 INFO L290 TraceCheckUtils]: 14: Hoare triple {37899#true} assume !(2 == ~c_dr_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L290 TraceCheckUtils]: 15: Hoare triple {37899#true} ~__retres1~1 := 0; {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L290 TraceCheckUtils]: 16: Hoare triple {37899#true} #res := ~__retres1~1; {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {37899#true} {37899#true} #2072#return; {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {37899#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {37899#true} assume !(0 != ~tmp___0~1); {37899#true} is VALID [2022-02-20 20:01:55,593 INFO L290 TraceCheckUtils]: 21: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,594 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {37899#true} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2078#return; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,594 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 20:01:55,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,616 INFO L290 TraceCheckUtils]: 0: Hoare triple {37947#(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); {37963#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (not (= |old(~q_read_ev~0)| 1)))} is VALID [2022-02-20 20:01:55,617 INFO L290 TraceCheckUtils]: 1: Hoare triple {37963#(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; {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:55,617 INFO L290 TraceCheckUtils]: 2: Hoare triple {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} assume true; {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:55,617 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2080#return; {37900#false} is VALID [2022-02-20 20:01:55,617 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 20:01:55,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,622 INFO L290 TraceCheckUtils]: 0: Hoare triple {37899#true} havoc ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {37899#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37899#true} is VALID [2022-02-20 20:01:55,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {37899#true} #res := ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,623 INFO L290 TraceCheckUtils]: 3: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,623 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {37899#true} {37900#false} #2082#return; {37900#false} is VALID [2022-02-20 20:01:55,623 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 65 [2022-02-20 20:01:55,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:55,626 INFO L290 TraceCheckUtils]: 0: Hoare triple {37899#true} havoc ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,627 INFO L290 TraceCheckUtils]: 1: Hoare triple {37899#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37899#true} is VALID [2022-02-20 20:01:55,627 INFO L290 TraceCheckUtils]: 2: Hoare triple {37899#true} #res := ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,627 INFO L290 TraceCheckUtils]: 3: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,627 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {37899#true} {37900#false} #2082#return; {37900#false} is VALID [2022-02-20 20:01:55,627 INFO L290 TraceCheckUtils]: 0: Hoare triple {37899#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; {37899#true} is VALID [2022-02-20 20:01:55,628 INFO L290 TraceCheckUtils]: 1: Hoare triple {37899#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {37899#true} is VALID [2022-02-20 20:01:55,628 INFO L290 TraceCheckUtils]: 2: Hoare triple {37899#true} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,629 INFO L290 TraceCheckUtils]: 3: Hoare triple {37901#(= ~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; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,629 INFO L272 TraceCheckUtils]: 4: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} call update_channels1(); {37946#(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:55,630 INFO L290 TraceCheckUtils]: 5: Hoare triple {37946#(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); {37947#(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:55,630 INFO L290 TraceCheckUtils]: 6: Hoare triple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37947#(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:55,630 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2074#return; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} assume { :begin_inline_init_threads1 } true; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,631 INFO L290 TraceCheckUtils]: 10: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,632 INFO L290 TraceCheckUtils]: 11: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} assume { :end_inline_init_threads1 } true; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,632 INFO L272 TraceCheckUtils]: 12: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} call fire_delta_events1(); {37947#(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:55,633 INFO L290 TraceCheckUtils]: 13: Hoare triple {37947#(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); {37947#(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:55,633 INFO L290 TraceCheckUtils]: 14: Hoare triple {37947#(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); {37947#(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:55,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37947#(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:55,634 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {37947#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2076#return; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,634 INFO L272 TraceCheckUtils]: 17: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} call activate_threads1(); {37948#(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:55,635 INFO L290 TraceCheckUtils]: 18: Hoare triple {37948#(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; {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L272 TraceCheckUtils]: 19: Hoare triple {37899#true} call #t~ret8 := is_do_write_p_triggered(); {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L290 TraceCheckUtils]: 20: Hoare triple {37899#true} havoc ~__retres1~0; {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L290 TraceCheckUtils]: 21: Hoare triple {37899#true} assume !(1 == ~p_dw_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L290 TraceCheckUtils]: 22: Hoare triple {37899#true} assume !(2 == ~p_dw_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L290 TraceCheckUtils]: 23: Hoare triple {37899#true} ~__retres1~0 := 0; {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L290 TraceCheckUtils]: 24: Hoare triple {37899#true} #res := ~__retres1~0; {37899#true} is VALID [2022-02-20 20:01:55,635 INFO L290 TraceCheckUtils]: 25: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {37899#true} {37899#true} #2070#return; {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L290 TraceCheckUtils]: 27: Hoare triple {37899#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L290 TraceCheckUtils]: 28: Hoare triple {37899#true} assume !(0 != ~tmp~1); {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L272 TraceCheckUtils]: 29: Hoare triple {37899#true} call #t~ret9 := is_do_read_c_triggered(); {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L290 TraceCheckUtils]: 30: Hoare triple {37899#true} havoc ~__retres1~1; {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L290 TraceCheckUtils]: 31: Hoare triple {37899#true} assume !(1 == ~c_dr_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L290 TraceCheckUtils]: 32: Hoare triple {37899#true} assume !(2 == ~c_dr_pc~0); {37899#true} is VALID [2022-02-20 20:01:55,636 INFO L290 TraceCheckUtils]: 33: Hoare triple {37899#true} ~__retres1~1 := 0; {37899#true} is VALID [2022-02-20 20:01:55,637 INFO L290 TraceCheckUtils]: 34: Hoare triple {37899#true} #res := ~__retres1~1; {37899#true} is VALID [2022-02-20 20:01:55,637 INFO L290 TraceCheckUtils]: 35: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,637 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37899#true} {37899#true} #2072#return; {37899#true} is VALID [2022-02-20 20:01:55,637 INFO L290 TraceCheckUtils]: 37: Hoare triple {37899#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {37899#true} is VALID [2022-02-20 20:01:55,637 INFO L290 TraceCheckUtils]: 38: Hoare triple {37899#true} assume !(0 != ~tmp___0~1); {37899#true} is VALID [2022-02-20 20:01:55,637 INFO L290 TraceCheckUtils]: 39: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,638 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {37899#true} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2078#return; {37901#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:55,638 INFO L272 TraceCheckUtils]: 41: Hoare triple {37901#(= ~q_write_ev~0 ~q_read_ev~0)} call reset_delta_events1(); {37947#(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:55,639 INFO L290 TraceCheckUtils]: 42: Hoare triple {37947#(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); {37963#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (not (= |old(~q_read_ev~0)| 1)))} is VALID [2022-02-20 20:01:55,652 INFO L290 TraceCheckUtils]: 43: Hoare triple {37963#(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; {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:55,659 INFO L290 TraceCheckUtils]: 44: Hoare triple {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} assume true; {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:55,660 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {37964#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} {37901#(= ~q_write_ev~0 ~q_read_ev~0)} #2080#return; {37900#false} is VALID [2022-02-20 20:01:55,660 INFO L290 TraceCheckUtils]: 46: Hoare triple {37900#false} assume !false; {37900#false} is VALID [2022-02-20 20:01:55,660 INFO L290 TraceCheckUtils]: 47: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,660 INFO L290 TraceCheckUtils]: 48: Hoare triple {37900#false} assume !false; {37900#false} is VALID [2022-02-20 20:01:55,661 INFO L272 TraceCheckUtils]: 49: Hoare triple {37900#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {37899#true} is VALID [2022-02-20 20:01:55,661 INFO L290 TraceCheckUtils]: 50: Hoare triple {37899#true} havoc ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,661 INFO L290 TraceCheckUtils]: 51: Hoare triple {37899#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37899#true} is VALID [2022-02-20 20:01:55,661 INFO L290 TraceCheckUtils]: 52: Hoare triple {37899#true} #res := ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,661 INFO L290 TraceCheckUtils]: 53: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,661 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {37899#true} {37900#false} #2082#return; {37900#false} is VALID [2022-02-20 20:01:55,661 INFO L290 TraceCheckUtils]: 55: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,661 INFO L290 TraceCheckUtils]: 56: Hoare triple {37900#false} assume 0 != eval1_~tmp___1~0#1; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 57: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 58: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 59: Hoare triple {37900#false} assume 0 == ~p_dw_pc~0; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 60: Hoare triple {37900#false} assume !false; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 61: Hoare triple {37900#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 62: Hoare triple {37900#false} assume { :end_inline_do_write_p } true; {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 63: Hoare triple {37900#false} assume !(0 == ~c_dr_st~0); {37900#false} is VALID [2022-02-20 20:01:55,662 INFO L290 TraceCheckUtils]: 64: Hoare triple {37900#false} assume !false; {37900#false} is VALID [2022-02-20 20:01:55,663 INFO L272 TraceCheckUtils]: 65: Hoare triple {37900#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {37899#true} is VALID [2022-02-20 20:01:55,663 INFO L290 TraceCheckUtils]: 66: Hoare triple {37899#true} havoc ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,663 INFO L290 TraceCheckUtils]: 67: Hoare triple {37899#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37899#true} is VALID [2022-02-20 20:01:55,663 INFO L290 TraceCheckUtils]: 68: Hoare triple {37899#true} #res := ~__retres1~2; {37899#true} is VALID [2022-02-20 20:01:55,663 INFO L290 TraceCheckUtils]: 69: Hoare triple {37899#true} assume true; {37899#true} is VALID [2022-02-20 20:01:55,663 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {37899#true} {37900#false} #2082#return; {37900#false} is VALID [2022-02-20 20:01:55,663 INFO L290 TraceCheckUtils]: 71: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 72: Hoare triple {37900#false} assume 0 != eval1_~tmp___1~0#1; {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 73: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 74: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 75: Hoare triple {37900#false} assume !(0 == ~p_dw_pc~0); {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 76: Hoare triple {37900#false} assume 1 == ~p_dw_pc~0; {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 77: Hoare triple {37900#false} assume !(0 == ~q_free~0); {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 78: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,664 INFO L290 TraceCheckUtils]: 79: Hoare triple {37900#false} assume !false; {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 80: Hoare triple {37900#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 81: Hoare triple {37900#false} assume { :end_inline_do_write_p } true; {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 82: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 83: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 84: Hoare triple {37900#false} assume !(0 == ~c_dr_pc~0); {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 85: Hoare triple {37900#false} assume 2 == ~c_dr_pc~0; {37900#false} is VALID [2022-02-20 20:01:55,665 INFO L290 TraceCheckUtils]: 86: Hoare triple {37900#false} do_read_c_~a~0#1 := ~a_t~0; {37900#false} is VALID [2022-02-20 20:01:55,666 INFO L290 TraceCheckUtils]: 87: Hoare triple {37900#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; {37900#false} is VALID [2022-02-20 20:01:55,666 INFO L290 TraceCheckUtils]: 88: Hoare triple {37900#false} assume !(~p_last_write~0 == ~c_last_read~0); {37900#false} is VALID [2022-02-20 20:01:55,666 INFO L272 TraceCheckUtils]: 89: Hoare triple {37900#false} call error1(); {37900#false} is VALID [2022-02-20 20:01:55,666 INFO L290 TraceCheckUtils]: 90: Hoare triple {37900#false} assume !false; {37900#false} is VALID [2022-02-20 20:01:55,666 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:55,667 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:55,667 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [908422434] [2022-02-20 20:01:55,667 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [908422434] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:55,667 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:55,667 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 20:01:55,667 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1146091157] [2022-02-20 20:01:55,667 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:55,668 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,668 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:55,668 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:55,721 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:55,722 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 20:01:55,722 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:55,722 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 20:01:55,723 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-02-20 20:01:55,723 INFO L87 Difference]: Start difference. First operand 1462 states and 1992 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:02:00,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:02:00,027 INFO L93 Difference]: Finished difference Result 3500 states and 4597 transitions. [2022-02-20 20:02:00,027 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 20:02:00,027 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:02:00,027 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:02:00,027 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:02:00,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 1168 transitions. [2022-02-20 20:02:00,036 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:02:00,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 1168 transitions. [2022-02-20 20:02:00,045 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 1168 transitions. [2022-02-20 20:02:00,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1168 edges. 1168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:02:01,128 INFO L225 Difference]: With dead ends: 3500 [2022-02-20 20:02:01,128 INFO L226 Difference]: Without dead ends: 2455 [2022-02-20 20:02:01,130 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:02:01,132 INFO L933 BasicCegarLoop]: 809 mSDtfsCounter, 1944 mSDsluCounter, 1577 mSDsCounter, 0 mSdLazyCounter, 1346 mSolverCounterSat, 228 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1976 SdHoareTripleChecker+Valid, 2386 SdHoareTripleChecker+Invalid, 1574 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 228 IncrementalHoareTripleChecker+Valid, 1346 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-02-20 20:02:01,132 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1976 Valid, 2386 Invalid, 1574 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [228 Valid, 1346 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-02-20 20:02:01,135 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2455 states. [2022-02-20 20:02:01,280 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2455 to 2139. [2022-02-20 20:02:01,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:02:01,284 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2455 states. Second operand has 2139 states, 1730 states have (on average 1.3485549132947976) internal successors, (2333), 1758 states have internal predecessors, (2333), 225 states have call successors, (225), 142 states have call predecessors, (225), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:02:01,287 INFO L74 IsIncluded]: Start isIncluded. First operand 2455 states. Second operand has 2139 states, 1730 states have (on average 1.3485549132947976) internal successors, (2333), 1758 states have internal predecessors, (2333), 225 states have call successors, (225), 142 states have call predecessors, (225), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:02:01,289 INFO L87 Difference]: Start difference. First operand 2455 states. Second operand has 2139 states, 1730 states have (on average 1.3485549132947976) internal successors, (2333), 1758 states have internal predecessors, (2333), 225 states have call successors, (225), 142 states have call predecessors, (225), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:02:01,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:02:01,572 INFO L93 Difference]: Finished difference Result 2455 states and 3243 transitions. [2022-02-20 20:02:01,572 INFO L276 IsEmpty]: Start isEmpty. Operand 2455 states and 3243 transitions. [2022-02-20 20:02:01,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:02:01,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:02:01,582 INFO L74 IsIncluded]: Start isIncluded. First operand has 2139 states, 1730 states have (on average 1.3485549132947976) internal successors, (2333), 1758 states have internal predecessors, (2333), 225 states have call successors, (225), 142 states have call predecessors, (225), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) Second operand 2455 states. [2022-02-20 20:02:01,585 INFO L87 Difference]: Start difference. First operand has 2139 states, 1730 states have (on average 1.3485549132947976) internal successors, (2333), 1758 states have internal predecessors, (2333), 225 states have call successors, (225), 142 states have call predecessors, (225), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) Second operand 2455 states. [2022-02-20 20:02:01,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:02:01,875 INFO L93 Difference]: Finished difference Result 2455 states and 3243 transitions. [2022-02-20 20:02:01,875 INFO L276 IsEmpty]: Start isEmpty. Operand 2455 states and 3243 transitions. [2022-02-20 20:02:01,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:02:01,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:02:01,881 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:02:01,881 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:02:01,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2139 states, 1730 states have (on average 1.3485549132947976) internal successors, (2333), 1758 states have internal predecessors, (2333), 225 states have call successors, (225), 142 states have call predecessors, (225), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:02:02,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2139 states to 2139 states and 2845 transitions. [2022-02-20 20:02:02,177 INFO L78 Accepts]: Start accepts. Automaton has 2139 states and 2845 transitions. Word has length 91 [2022-02-20 20:02:02,177 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:02:02,177 INFO L470 AbstractCegarLoop]: Abstraction has 2139 states and 2845 transitions. [2022-02-20 20:02:02,177 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:02:02,177 INFO L276 IsEmpty]: Start isEmpty. Operand 2139 states and 2845 transitions. [2022-02-20 20:02:02,179 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 20:02:02,179 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:02:02,179 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:02:02,180 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 20:02:02,180 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:02:02,180 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:02:02,180 INFO L85 PathProgramCache]: Analyzing trace with hash -36581305, now seen corresponding path program 1 times [2022-02-20 20:02:02,181 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:02:02,181 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2059261672] [2022-02-20 20:02:02,181 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:02:02,181 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:02:02,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,226 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:02:02,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,230 INFO L290 TraceCheckUtils]: 0: Hoare triple {50440#(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); {50393#true} is VALID [2022-02-20 20:02:02,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,230 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {50393#true} {50393#true} #2074#return; {50393#true} is VALID [2022-02-20 20:02:02,235 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:02:02,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,239 INFO L290 TraceCheckUtils]: 0: Hoare triple {50441#(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); {50393#true} is VALID [2022-02-20 20:02:02,240 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume !(0 == ~q_write_ev~0); {50393#true} is VALID [2022-02-20 20:02:02,240 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,240 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50393#true} {50398#(= ~c_dr_st~0 0)} #2076#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,245 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:02:02,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,257 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:02:02,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,261 INFO L290 TraceCheckUtils]: 0: Hoare triple {50393#true} havoc ~__retres1~0; {50393#true} is VALID [2022-02-20 20:02:02,261 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume !(1 == ~p_dw_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,261 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} assume !(2 == ~p_dw_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,262 INFO L290 TraceCheckUtils]: 3: Hoare triple {50393#true} ~__retres1~0 := 0; {50393#true} is VALID [2022-02-20 20:02:02,262 INFO L290 TraceCheckUtils]: 4: Hoare triple {50393#true} #res := ~__retres1~0; {50393#true} is VALID [2022-02-20 20:02:02,262 INFO L290 TraceCheckUtils]: 5: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,262 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {50393#true} {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2070#return; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,263 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:02:02,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,266 INFO L290 TraceCheckUtils]: 0: Hoare triple {50393#true} havoc ~__retres1~1; {50393#true} is VALID [2022-02-20 20:02:02,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume !(1 == ~c_dr_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} assume !(2 == ~c_dr_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,266 INFO L290 TraceCheckUtils]: 3: Hoare triple {50393#true} ~__retres1~1 := 0; {50393#true} is VALID [2022-02-20 20:02:02,266 INFO L290 TraceCheckUtils]: 4: Hoare triple {50393#true} #res := ~__retres1~1; {50393#true} is VALID [2022-02-20 20:02:02,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,267 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {50393#true} {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2072#return; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 0: Hoare triple {50442#(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; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,268 INFO L272 TraceCheckUtils]: 1: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret8 := is_do_write_p_triggered(); {50393#true} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} havoc ~__retres1~0; {50393#true} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 3: Hoare triple {50393#true} assume !(1 == ~p_dw_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 4: Hoare triple {50393#true} assume !(2 == ~p_dw_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 5: Hoare triple {50393#true} ~__retres1~0 := 0; {50393#true} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 6: Hoare triple {50393#true} #res := ~__retres1~0; {50393#true} is VALID [2022-02-20 20:02:02,268 INFO L290 TraceCheckUtils]: 7: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,269 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {50393#true} {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2070#return; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,269 INFO L290 TraceCheckUtils]: 9: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,270 INFO L290 TraceCheckUtils]: 10: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp~1); {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,270 INFO L272 TraceCheckUtils]: 11: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret9 := is_do_read_c_triggered(); {50393#true} is VALID [2022-02-20 20:02:02,270 INFO L290 TraceCheckUtils]: 12: Hoare triple {50393#true} havoc ~__retres1~1; {50393#true} is VALID [2022-02-20 20:02:02,270 INFO L290 TraceCheckUtils]: 13: Hoare triple {50393#true} assume !(1 == ~c_dr_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,270 INFO L290 TraceCheckUtils]: 14: Hoare triple {50393#true} assume !(2 == ~c_dr_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,270 INFO L290 TraceCheckUtils]: 15: Hoare triple {50393#true} ~__retres1~1 := 0; {50393#true} is VALID [2022-02-20 20:02:02,270 INFO L290 TraceCheckUtils]: 16: Hoare triple {50393#true} #res := ~__retres1~1; {50393#true} is VALID [2022-02-20 20:02:02,271 INFO L290 TraceCheckUtils]: 17: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,271 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {50393#true} {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2072#return; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,271 INFO L290 TraceCheckUtils]: 19: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,272 INFO L290 TraceCheckUtils]: 20: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp___0~1); {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,272 INFO L290 TraceCheckUtils]: 21: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume true; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,273 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} {50398#(= ~c_dr_st~0 0)} #2078#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,273 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 20:02:02,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,277 INFO L290 TraceCheckUtils]: 0: Hoare triple {50441#(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); {50393#true} is VALID [2022-02-20 20:02:02,277 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume !(1 == ~q_write_ev~0); {50393#true} is VALID [2022-02-20 20:02:02,277 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,278 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50393#true} {50398#(= ~c_dr_st~0 0)} #2080#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,278 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 20:02:02,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,281 INFO L290 TraceCheckUtils]: 0: Hoare triple {50393#true} havoc ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,282 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50393#true} is VALID [2022-02-20 20:02:02,282 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} #res := ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,282 INFO L290 TraceCheckUtils]: 3: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,282 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {50393#true} {50398#(= ~c_dr_st~0 0)} #2082#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,283 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 65 [2022-02-20 20:02:02,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:02:02,286 INFO L290 TraceCheckUtils]: 0: Hoare triple {50393#true} havoc ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50393#true} is VALID [2022-02-20 20:02:02,286 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} #res := ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,286 INFO L290 TraceCheckUtils]: 3: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,286 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {50393#true} {50394#false} #2082#return; {50394#false} is VALID [2022-02-20 20:02:02,287 INFO L290 TraceCheckUtils]: 0: Hoare triple {50393#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; {50393#true} is VALID [2022-02-20 20:02:02,287 INFO L290 TraceCheckUtils]: 1: Hoare triple {50393#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet54#1, main_#t~ret55#1, main_#t~ret56#1;assume -2147483648 <= main_#t~nondet54#1 && main_#t~nondet54#1 <= 2147483647; {50393#true} is VALID [2022-02-20 20:02:02,287 INFO L290 TraceCheckUtils]: 2: Hoare triple {50393#true} assume 0 != main_#t~nondet54#1;havoc main_#t~nondet54#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; {50393#true} is VALID [2022-02-20 20:02:02,287 INFO L290 TraceCheckUtils]: 3: Hoare triple {50393#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; {50393#true} is VALID [2022-02-20 20:02:02,288 INFO L272 TraceCheckUtils]: 4: Hoare triple {50393#true} call update_channels1(); {50440#(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:02:02,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {50440#(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); {50393#true} is VALID [2022-02-20 20:02:02,288 INFO L290 TraceCheckUtils]: 6: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,288 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {50393#true} {50393#true} #2074#return; {50393#true} is VALID [2022-02-20 20:02:02,288 INFO L290 TraceCheckUtils]: 8: Hoare triple {50393#true} assume { :begin_inline_init_threads1 } true; {50393#true} is VALID [2022-02-20 20:02:02,288 INFO L290 TraceCheckUtils]: 9: Hoare triple {50393#true} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {50393#true} is VALID [2022-02-20 20:02:02,289 INFO L290 TraceCheckUtils]: 10: Hoare triple {50393#true} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,289 INFO L290 TraceCheckUtils]: 11: Hoare triple {50398#(= ~c_dr_st~0 0)} assume { :end_inline_init_threads1 } true; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,289 INFO L272 TraceCheckUtils]: 12: Hoare triple {50398#(= ~c_dr_st~0 0)} call fire_delta_events1(); {50441#(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:02:02,290 INFO L290 TraceCheckUtils]: 13: Hoare triple {50441#(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); {50393#true} is VALID [2022-02-20 20:02:02,290 INFO L290 TraceCheckUtils]: 14: Hoare triple {50393#true} assume !(0 == ~q_write_ev~0); {50393#true} is VALID [2022-02-20 20:02:02,290 INFO L290 TraceCheckUtils]: 15: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,290 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {50393#true} {50398#(= ~c_dr_st~0 0)} #2076#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,291 INFO L272 TraceCheckUtils]: 17: Hoare triple {50398#(= ~c_dr_st~0 0)} call activate_threads1(); {50442#(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:02:02,291 INFO L290 TraceCheckUtils]: 18: Hoare triple {50442#(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; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,291 INFO L272 TraceCheckUtils]: 19: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret8 := is_do_write_p_triggered(); {50393#true} is VALID [2022-02-20 20:02:02,291 INFO L290 TraceCheckUtils]: 20: Hoare triple {50393#true} havoc ~__retres1~0; {50393#true} is VALID [2022-02-20 20:02:02,291 INFO L290 TraceCheckUtils]: 21: Hoare triple {50393#true} assume !(1 == ~p_dw_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,292 INFO L290 TraceCheckUtils]: 22: Hoare triple {50393#true} assume !(2 == ~p_dw_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,292 INFO L290 TraceCheckUtils]: 23: Hoare triple {50393#true} ~__retres1~0 := 0; {50393#true} is VALID [2022-02-20 20:02:02,292 INFO L290 TraceCheckUtils]: 24: Hoare triple {50393#true} #res := ~__retres1~0; {50393#true} is VALID [2022-02-20 20:02:02,292 INFO L290 TraceCheckUtils]: 25: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,293 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {50393#true} {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2070#return; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,293 INFO L290 TraceCheckUtils]: 27: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,293 INFO L290 TraceCheckUtils]: 28: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp~1); {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,293 INFO L272 TraceCheckUtils]: 29: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret9 := is_do_read_c_triggered(); {50393#true} is VALID [2022-02-20 20:02:02,293 INFO L290 TraceCheckUtils]: 30: Hoare triple {50393#true} havoc ~__retres1~1; {50393#true} is VALID [2022-02-20 20:02:02,294 INFO L290 TraceCheckUtils]: 31: Hoare triple {50393#true} assume !(1 == ~c_dr_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,294 INFO L290 TraceCheckUtils]: 32: Hoare triple {50393#true} assume !(2 == ~c_dr_pc~0); {50393#true} is VALID [2022-02-20 20:02:02,294 INFO L290 TraceCheckUtils]: 33: Hoare triple {50393#true} ~__retres1~1 := 0; {50393#true} is VALID [2022-02-20 20:02:02,294 INFO L290 TraceCheckUtils]: 34: Hoare triple {50393#true} #res := ~__retres1~1; {50393#true} is VALID [2022-02-20 20:02:02,294 INFO L290 TraceCheckUtils]: 35: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,295 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50393#true} {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2072#return; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,295 INFO L290 TraceCheckUtils]: 37: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,295 INFO L290 TraceCheckUtils]: 38: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp___0~1); {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,296 INFO L290 TraceCheckUtils]: 39: Hoare triple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume true; {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:02:02,296 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {50443#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} {50398#(= ~c_dr_st~0 0)} #2078#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,297 INFO L272 TraceCheckUtils]: 41: Hoare triple {50398#(= ~c_dr_st~0 0)} call reset_delta_events1(); {50441#(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:02:02,297 INFO L290 TraceCheckUtils]: 42: Hoare triple {50441#(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); {50393#true} is VALID [2022-02-20 20:02:02,297 INFO L290 TraceCheckUtils]: 43: Hoare triple {50393#true} assume !(1 == ~q_write_ev~0); {50393#true} is VALID [2022-02-20 20:02:02,297 INFO L290 TraceCheckUtils]: 44: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,297 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {50393#true} {50398#(= ~c_dr_st~0 0)} #2080#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,298 INFO L290 TraceCheckUtils]: 46: Hoare triple {50398#(= ~c_dr_st~0 0)} assume !false; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,298 INFO L290 TraceCheckUtils]: 47: Hoare triple {50398#(= ~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; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,298 INFO L290 TraceCheckUtils]: 48: Hoare triple {50398#(= ~c_dr_st~0 0)} assume !false; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,298 INFO L272 TraceCheckUtils]: 49: Hoare triple {50398#(= ~c_dr_st~0 0)} call eval1_#t~ret10#1 := exists_runnable_thread1(); {50393#true} is VALID [2022-02-20 20:02:02,299 INFO L290 TraceCheckUtils]: 50: Hoare triple {50393#true} havoc ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,299 INFO L290 TraceCheckUtils]: 51: Hoare triple {50393#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50393#true} is VALID [2022-02-20 20:02:02,299 INFO L290 TraceCheckUtils]: 52: Hoare triple {50393#true} #res := ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,299 INFO L290 TraceCheckUtils]: 53: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,299 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {50393#true} {50398#(= ~c_dr_st~0 0)} #2082#return; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,300 INFO L290 TraceCheckUtils]: 55: Hoare triple {50398#(= ~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; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,300 INFO L290 TraceCheckUtils]: 56: Hoare triple {50398#(= ~c_dr_st~0 0)} assume 0 != eval1_~tmp___1~0#1; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,300 INFO L290 TraceCheckUtils]: 57: Hoare triple {50398#(= ~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; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,301 INFO L290 TraceCheckUtils]: 58: Hoare triple {50398#(= ~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; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,301 INFO L290 TraceCheckUtils]: 59: Hoare triple {50398#(= ~c_dr_st~0 0)} assume 0 == ~p_dw_pc~0; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,301 INFO L290 TraceCheckUtils]: 60: Hoare triple {50398#(= ~c_dr_st~0 0)} assume !false; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,302 INFO L290 TraceCheckUtils]: 61: Hoare triple {50398#(= ~c_dr_st~0 0)} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,302 INFO L290 TraceCheckUtils]: 62: Hoare triple {50398#(= ~c_dr_st~0 0)} assume { :end_inline_do_write_p } true; {50398#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:02:02,302 INFO L290 TraceCheckUtils]: 63: Hoare triple {50398#(= ~c_dr_st~0 0)} assume !(0 == ~c_dr_st~0); {50394#false} is VALID [2022-02-20 20:02:02,303 INFO L290 TraceCheckUtils]: 64: Hoare triple {50394#false} assume !false; {50394#false} is VALID [2022-02-20 20:02:02,303 INFO L272 TraceCheckUtils]: 65: Hoare triple {50394#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {50393#true} is VALID [2022-02-20 20:02:02,303 INFO L290 TraceCheckUtils]: 66: Hoare triple {50393#true} havoc ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,303 INFO L290 TraceCheckUtils]: 67: Hoare triple {50393#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50393#true} is VALID [2022-02-20 20:02:02,303 INFO L290 TraceCheckUtils]: 68: Hoare triple {50393#true} #res := ~__retres1~2; {50393#true} is VALID [2022-02-20 20:02:02,303 INFO L290 TraceCheckUtils]: 69: Hoare triple {50393#true} assume true; {50393#true} is VALID [2022-02-20 20:02:02,303 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {50393#true} {50394#false} #2082#return; {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 71: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 72: Hoare triple {50394#false} assume 0 != eval1_~tmp___1~0#1; {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 73: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 74: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 75: Hoare triple {50394#false} assume !(0 == ~p_dw_pc~0); {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 76: Hoare triple {50394#false} assume 1 == ~p_dw_pc~0; {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 77: Hoare triple {50394#false} assume !(0 == ~q_free~0); {50394#false} is VALID [2022-02-20 20:02:02,304 INFO L290 TraceCheckUtils]: 78: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 79: Hoare triple {50394#false} assume !false; {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 80: Hoare triple {50394#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 81: Hoare triple {50394#false} assume { :end_inline_do_write_p } true; {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 82: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 83: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 84: Hoare triple {50394#false} assume !(0 == ~c_dr_pc~0); {50394#false} is VALID [2022-02-20 20:02:02,305 INFO L290 TraceCheckUtils]: 85: Hoare triple {50394#false} assume 2 == ~c_dr_pc~0; {50394#false} is VALID [2022-02-20 20:02:02,306 INFO L290 TraceCheckUtils]: 86: Hoare triple {50394#false} do_read_c_~a~0#1 := ~a_t~0; {50394#false} is VALID [2022-02-20 20:02:02,306 INFO L290 TraceCheckUtils]: 87: Hoare triple {50394#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; {50394#false} is VALID [2022-02-20 20:02:02,306 INFO L290 TraceCheckUtils]: 88: Hoare triple {50394#false} assume !(~p_last_write~0 == ~c_last_read~0); {50394#false} is VALID [2022-02-20 20:02:02,306 INFO L272 TraceCheckUtils]: 89: Hoare triple {50394#false} call error1(); {50394#false} is VALID [2022-02-20 20:02:02,306 INFO L290 TraceCheckUtils]: 90: Hoare triple {50394#false} assume !false; {50394#false} is VALID [2022-02-20 20:02:02,307 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:02:02,307 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:02:02,307 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2059261672] [2022-02-20 20:02:02,307 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2059261672] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:02:02,307 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:02:02,307 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 20:02:02,307 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1572081628] [2022-02-20 20:02:02,308 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:02:02,308 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:02,308 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:02:02,309 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:02:02,374 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:02:02,374 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 20:02:02,375 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:02:02,375 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 20:02:02,375 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 20:02:02,375 INFO L87 Difference]: Start difference. First operand 2139 states and 2845 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:05,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:02:05,975 INFO L93 Difference]: Finished difference Result 5798 states and 7627 transitions. [2022-02-20 20:02:05,975 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 20:02:05,976 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:05,976 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:02:05,976 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:05,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 1113 transitions. [2022-02-20 20:02:05,984 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:05,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 1113 transitions. [2022-02-20 20:02:05,993 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 1113 transitions. [2022-02-20 20:02:06,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1113 edges. 1113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:02:07,445 INFO L225 Difference]: With dead ends: 5798 [2022-02-20 20:02:07,445 INFO L226 Difference]: Without dead ends: 4078 [2022-02-20 20:02:07,448 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:07,449 INFO L933 BasicCegarLoop]: 783 mSDtfsCounter, 2229 mSDsluCounter, 795 mSDsCounter, 0 mSdLazyCounter, 314 mSolverCounterSat, 287 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2264 SdHoareTripleChecker+Valid, 1578 SdHoareTripleChecker+Invalid, 601 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 287 IncrementalHoareTripleChecker+Valid, 314 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 20:02:07,449 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2264 Valid, 1578 Invalid, 601 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [287 Valid, 314 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 20:02:07,452 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4078 states.