/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf -i ../../../trunk/examples/svcomp/systemc/pc_sfifo_1.cil-2.c -------------------------------------------------------------------------------- This is Ultimate 0.1.25-8fc6572 [2020-07-10 20:26:00,864 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-10 20:26:00,868 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-10 20:26:00,886 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-10 20:26:00,886 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-10 20:26:00,888 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-10 20:26:00,890 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-10 20:26:00,904 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-10 20:26:00,906 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-10 20:26:00,907 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-10 20:26:00,910 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-10 20:26:00,911 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-10 20:26:00,911 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-10 20:26:00,912 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-10 20:26:00,913 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-10 20:26:00,914 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-10 20:26:00,915 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-10 20:26:00,916 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-10 20:26:00,918 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-10 20:26:00,920 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-10 20:26:00,921 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-10 20:26:00,922 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-10 20:26:00,924 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-10 20:26:00,924 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-10 20:26:00,927 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-10 20:26:00,927 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-10 20:26:00,927 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-10 20:26:00,928 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-10 20:26:00,929 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-10 20:26:00,930 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-10 20:26:00,930 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-10 20:26:00,931 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-10 20:26:00,931 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-10 20:26:00,932 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-10 20:26:00,933 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-10 20:26:00,933 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-10 20:26:00,934 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-10 20:26:00,934 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-10 20:26:00,935 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-10 20:26:00,936 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-10 20:26:00,936 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-10 20:26:00,937 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-10 20:26:00,946 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-10 20:26:00,946 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-10 20:26:00,948 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-10 20:26:00,948 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-10 20:26:00,948 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-10 20:26:00,948 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-10 20:26:00,949 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-10 20:26:00,949 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-10 20:26:00,949 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-10 20:26:00,949 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-10 20:26:00,950 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-10 20:26:00,950 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-10 20:26:00,950 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-10 20:26:00,950 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-10 20:26:00,950 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-10 20:26:00,951 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-10 20:26:00,951 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-10 20:26:00,951 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-10 20:26:00,951 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-10 20:26:00,952 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-10 20:26:00,952 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-10 20:26:00,952 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-10 20:26:00,952 INFO L138 SettingsManager]: * Use separate solver for trace checks=false [2020-07-10 20:26:01,249 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-10 20:26:01,267 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-10 20:26:01,271 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-10 20:26:01,272 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-10 20:26:01,273 INFO L275 PluginConnector]: CDTParser initialized [2020-07-10 20:26:01,274 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/systemc/pc_sfifo_1.cil-2.c [2020-07-10 20:26:01,351 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b2f18e312/327b030e9d8e48eda61d7eb3cfcdfdae/FLAG3fed4e4cc [2020-07-10 20:26:01,857 INFO L306 CDTParser]: Found 1 translation units. [2020-07-10 20:26:01,858 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/systemc/pc_sfifo_1.cil-2.c [2020-07-10 20:26:01,870 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b2f18e312/327b030e9d8e48eda61d7eb3cfcdfdae/FLAG3fed4e4cc [2020-07-10 20:26:02,228 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b2f18e312/327b030e9d8e48eda61d7eb3cfcdfdae [2020-07-10 20:26:02,237 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-10 20:26:02,239 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-10 20:26:02,240 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-10 20:26:02,240 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-10 20:26:02,244 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-10 20:26:02,245 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,248 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2973a9e9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02, skipping insertion in model container [2020-07-10 20:26:02,248 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,256 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-10 20:26:02,299 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-10 20:26:02,541 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-10 20:26:02,547 INFO L203 MainTranslator]: Completed pre-run [2020-07-10 20:26:02,586 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-10 20:26:02,604 INFO L208 MainTranslator]: Completed translation [2020-07-10 20:26:02,605 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02 WrapperNode [2020-07-10 20:26:02,605 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-10 20:26:02,606 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-10 20:26:02,606 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-10 20:26:02,606 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-10 20:26:02,700 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,701 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,708 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,708 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,725 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,737 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,739 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... [2020-07-10 20:26:02,742 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-10 20:26:02,743 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-10 20:26:02,743 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-10 20:26:02,743 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-10 20:26:02,744 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-10 20:26:02,804 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-10 20:26:02,804 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure error [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_write_p_triggered [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_read_c_triggered [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure immediate_notify_threads [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure do_write_p [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure do_read_c [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure init_threads [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread [2020-07-10 20:26:02,805 INFO L138 BoogieDeclarations]: Found implementation of procedure eval [2020-07-10 20:26:02,806 INFO L138 BoogieDeclarations]: Found implementation of procedure stop_simulation [2020-07-10 20:26:02,806 INFO L138 BoogieDeclarations]: Found implementation of procedure start_simulation [2020-07-10 20:26:02,806 INFO L138 BoogieDeclarations]: Found implementation of procedure init_model [2020-07-10 20:26:02,806 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-10 20:26:02,806 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-10 20:26:02,807 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-10 20:26:02,807 INFO L130 BoogieDeclarations]: Found specification of procedure error [2020-07-10 20:26:02,807 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_write_p_triggered [2020-07-10 20:26:02,807 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_read_c_triggered [2020-07-10 20:26:02,807 INFO L130 BoogieDeclarations]: Found specification of procedure immediate_notify_threads [2020-07-10 20:26:02,807 INFO L130 BoogieDeclarations]: Found specification of procedure do_write_p [2020-07-10 20:26:02,808 INFO L130 BoogieDeclarations]: Found specification of procedure do_read_c [2020-07-10 20:26:02,808 INFO L130 BoogieDeclarations]: Found specification of procedure init_threads [2020-07-10 20:26:02,809 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread [2020-07-10 20:26:02,809 INFO L130 BoogieDeclarations]: Found specification of procedure eval [2020-07-10 20:26:02,809 INFO L130 BoogieDeclarations]: Found specification of procedure stop_simulation [2020-07-10 20:26:02,809 INFO L130 BoogieDeclarations]: Found specification of procedure start_simulation [2020-07-10 20:26:02,809 INFO L130 BoogieDeclarations]: Found specification of procedure init_model [2020-07-10 20:26:02,809 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-10 20:26:02,810 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-10 20:26:02,810 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-10 20:26:03,572 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-10 20:26:03,572 INFO L295 CfgBuilder]: Removed 4 assume(true) statements. [2020-07-10 20:26:03,582 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.07 08:26:03 BoogieIcfgContainer [2020-07-10 20:26:03,582 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-10 20:26:03,586 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-10 20:26:03,586 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-10 20:26:03,589 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-10 20:26:03,590 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 10.07 08:26:02" (1/3) ... [2020-07-10 20:26:03,591 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63e66208 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.07 08:26:03, skipping insertion in model container [2020-07-10 20:26:03,591 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 08:26:02" (2/3) ... [2020-07-10 20:26:03,592 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63e66208 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.07 08:26:03, skipping insertion in model container [2020-07-10 20:26:03,592 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.07 08:26:03" (3/3) ... [2020-07-10 20:26:03,595 INFO L109 eAbstractionObserver]: Analyzing ICFG pc_sfifo_1.cil-2.c [2020-07-10 20:26:03,607 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:AcceleratedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-10 20:26:03,615 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-10 20:26:03,629 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-10 20:26:03,650 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-10 20:26:03,650 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-10 20:26:03,650 INFO L377 AbstractCegarLoop]: Compute interpolants for AcceleratedInterpolation [2020-07-10 20:26:03,650 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-10 20:26:03,651 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-10 20:26:03,651 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-10 20:26:03,651 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-10 20:26:03,651 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-10 20:26:03,671 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states. [2020-07-10 20:26:03,690 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2020-07-10 20:26:03,691 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:26:03,692 INFO L422 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:26:03,692 INFO L427 AbstractCegarLoop]: === Iteration 1 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:26:03,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:26:03,699 INFO L82 PathProgramCache]: Analyzing trace with hash 1485288606, now seen corresponding path program 1 times [2020-07-10 20:26:03,708 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:26:03,709 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [940919837] [2020-07-10 20:26:03,709 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:26:03,902 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,159 INFO L280 TraceCheckUtils]: 0: Hoare triple {254#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,160 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} ~q_free~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,160 INFO L280 TraceCheckUtils]: 2: Hoare triple {185#true} ~q_read_ev~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,160 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} ~q_write_ev~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,161 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} ~p_num_write~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,161 INFO L280 TraceCheckUtils]: 5: Hoare triple {185#true} ~p_last_write~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,162 INFO L280 TraceCheckUtils]: 6: Hoare triple {185#true} ~p_dw_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,162 INFO L280 TraceCheckUtils]: 7: Hoare triple {185#true} ~p_dw_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,163 INFO L280 TraceCheckUtils]: 8: Hoare triple {185#true} ~p_dw_i~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,163 INFO L280 TraceCheckUtils]: 9: Hoare triple {185#true} ~c_num_read~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,163 INFO L280 TraceCheckUtils]: 10: Hoare triple {185#true} ~c_last_read~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,164 INFO L280 TraceCheckUtils]: 11: Hoare triple {185#true} ~c_dr_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,164 INFO L280 TraceCheckUtils]: 12: Hoare triple {185#true} ~c_dr_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,164 INFO L280 TraceCheckUtils]: 13: Hoare triple {185#true} ~c_dr_i~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,165 INFO L280 TraceCheckUtils]: 14: Hoare triple {185#true} ~a_t~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,165 INFO L280 TraceCheckUtils]: 15: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,166 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {185#true} {185#true} #361#return; {185#true} is VALID [2020-07-10 20:26:04,210 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,217 INFO L280 TraceCheckUtils]: 0: Hoare triple {255#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,218 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} ~q_write_ev~0 := 2; {185#true} is VALID [2020-07-10 20:26:04,218 INFO L280 TraceCheckUtils]: 2: Hoare triple {185#true} ~q_read_ev~0 := ~q_write_ev~0; {185#true} is VALID [2020-07-10 20:26:04,219 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} ~p_num_write~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,219 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} ~p_dw_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,219 INFO L280 TraceCheckUtils]: 5: Hoare triple {185#true} ~p_dw_i~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,220 INFO L280 TraceCheckUtils]: 6: Hoare triple {185#true} ~c_num_read~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,220 INFO L280 TraceCheckUtils]: 7: Hoare triple {185#true} ~c_dr_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,221 INFO L280 TraceCheckUtils]: 8: Hoare triple {185#true} ~c_dr_i~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,221 INFO L280 TraceCheckUtils]: 9: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,221 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {185#true} {185#true} #337#return; {185#true} is VALID [2020-07-10 20:26:04,240 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,245 INFO L280 TraceCheckUtils]: 0: Hoare triple {256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {185#true} is VALID [2020-07-10 20:26:04,246 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} ~p_dw_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,246 INFO L280 TraceCheckUtils]: 2: Hoare triple {185#true} assume 1 == ~c_dr_i~0; {185#true} is VALID [2020-07-10 20:26:04,246 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} ~c_dr_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,247 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,247 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {185#true} {185#true} #355#return; {185#true} is VALID [2020-07-10 20:26:04,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,259 INFO L280 TraceCheckUtils]: 0: Hoare triple {185#true} havoc ~__retres1~2; {185#true} is VALID [2020-07-10 20:26:04,260 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} assume 0 == ~p_dw_st~0; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,261 INFO L280 TraceCheckUtils]: 2: Hoare triple {227#(= 0 ~p_dw_st~0)} ~__retres1~2 := 1; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,261 INFO L280 TraceCheckUtils]: 3: Hoare triple {227#(= 0 ~p_dw_st~0)} #res := ~__retres1~2; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,262 INFO L280 TraceCheckUtils]: 4: Hoare triple {227#(= 0 ~p_dw_st~0)} assume true; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,264 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {227#(= 0 ~p_dw_st~0)} {185#true} #347#return; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,283 INFO L280 TraceCheckUtils]: 0: Hoare triple {185#true} havoc ~__retres1~0; {185#true} is VALID [2020-07-10 20:26:04,284 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} assume !(1 == ~p_dw_pc~0); {185#true} is VALID [2020-07-10 20:26:04,284 INFO L280 TraceCheckUtils]: 2: Hoare triple {185#true} ~__retres1~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,285 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} #res := ~__retres1~0; {185#true} is VALID [2020-07-10 20:26:04,285 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,285 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {185#true} {185#true} #343#return; {185#true} is VALID [2020-07-10 20:26:04,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:04,291 INFO L280 TraceCheckUtils]: 0: Hoare triple {185#true} havoc ~__retres1~1; {185#true} is VALID [2020-07-10 20:26:04,291 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} assume !(1 == ~c_dr_pc~0); {185#true} is VALID [2020-07-10 20:26:04,292 INFO L280 TraceCheckUtils]: 2: Hoare triple {185#true} ~__retres1~1 := 0; {185#true} is VALID [2020-07-10 20:26:04,292 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} #res := ~__retres1~1; {185#true} is VALID [2020-07-10 20:26:04,292 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,293 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {185#true} {185#true} #345#return; {185#true} is VALID [2020-07-10 20:26:04,293 INFO L280 TraceCheckUtils]: 0: Hoare triple {256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {185#true} is VALID [2020-07-10 20:26:04,294 INFO L280 TraceCheckUtils]: 1: Hoare triple {185#true} havoc ~tmp___0~0; {185#true} is VALID [2020-07-10 20:26:04,294 INFO L263 TraceCheckUtils]: 2: Hoare triple {185#true} call #t~ret0 := is_do_write_p_triggered(); {185#true} is VALID [2020-07-10 20:26:04,294 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} havoc ~__retres1~0; {185#true} is VALID [2020-07-10 20:26:04,295 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} assume !(1 == ~p_dw_pc~0); {185#true} is VALID [2020-07-10 20:26:04,295 INFO L280 TraceCheckUtils]: 5: Hoare triple {185#true} ~__retres1~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,295 INFO L280 TraceCheckUtils]: 6: Hoare triple {185#true} #res := ~__retres1~0; {185#true} is VALID [2020-07-10 20:26:04,296 INFO L280 TraceCheckUtils]: 7: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,296 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {185#true} {185#true} #343#return; {185#true} is VALID [2020-07-10 20:26:04,296 INFO L280 TraceCheckUtils]: 9: Hoare triple {185#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {185#true} is VALID [2020-07-10 20:26:04,297 INFO L280 TraceCheckUtils]: 10: Hoare triple {185#true} ~tmp~0 := #t~ret0; {185#true} is VALID [2020-07-10 20:26:04,297 INFO L280 TraceCheckUtils]: 11: Hoare triple {185#true} havoc #t~ret0; {185#true} is VALID [2020-07-10 20:26:04,297 INFO L280 TraceCheckUtils]: 12: Hoare triple {185#true} assume !(0 != ~tmp~0); {185#true} is VALID [2020-07-10 20:26:04,298 INFO L263 TraceCheckUtils]: 13: Hoare triple {185#true} call #t~ret1 := is_do_read_c_triggered(); {185#true} is VALID [2020-07-10 20:26:04,298 INFO L280 TraceCheckUtils]: 14: Hoare triple {185#true} havoc ~__retres1~1; {185#true} is VALID [2020-07-10 20:26:04,299 INFO L280 TraceCheckUtils]: 15: Hoare triple {185#true} assume !(1 == ~c_dr_pc~0); {185#true} is VALID [2020-07-10 20:26:04,299 INFO L280 TraceCheckUtils]: 16: Hoare triple {185#true} ~__retres1~1 := 0; {185#true} is VALID [2020-07-10 20:26:04,299 INFO L280 TraceCheckUtils]: 17: Hoare triple {185#true} #res := ~__retres1~1; {185#true} is VALID [2020-07-10 20:26:04,300 INFO L280 TraceCheckUtils]: 18: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,300 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {185#true} {185#true} #345#return; {185#true} is VALID [2020-07-10 20:26:04,300 INFO L280 TraceCheckUtils]: 20: Hoare triple {185#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {185#true} is VALID [2020-07-10 20:26:04,301 INFO L280 TraceCheckUtils]: 21: Hoare triple {185#true} ~tmp___0~0 := #t~ret1; {185#true} is VALID [2020-07-10 20:26:04,301 INFO L280 TraceCheckUtils]: 22: Hoare triple {185#true} havoc #t~ret1; {185#true} is VALID [2020-07-10 20:26:04,301 INFO L280 TraceCheckUtils]: 23: Hoare triple {185#true} assume !(0 != ~tmp___0~0); {185#true} is VALID [2020-07-10 20:26:04,302 INFO L280 TraceCheckUtils]: 24: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,302 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {185#true} {186#false} #365#return; {186#false} is VALID [2020-07-10 20:26:04,311 INFO L263 TraceCheckUtils]: 0: Hoare triple {185#true} call ULTIMATE.init(); {254#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:04,312 INFO L280 TraceCheckUtils]: 1: Hoare triple {254#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,312 INFO L280 TraceCheckUtils]: 2: Hoare triple {185#true} ~q_free~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,312 INFO L280 TraceCheckUtils]: 3: Hoare triple {185#true} ~q_read_ev~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,313 INFO L280 TraceCheckUtils]: 4: Hoare triple {185#true} ~q_write_ev~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,313 INFO L280 TraceCheckUtils]: 5: Hoare triple {185#true} ~p_num_write~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,313 INFO L280 TraceCheckUtils]: 6: Hoare triple {185#true} ~p_last_write~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,314 INFO L280 TraceCheckUtils]: 7: Hoare triple {185#true} ~p_dw_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,314 INFO L280 TraceCheckUtils]: 8: Hoare triple {185#true} ~p_dw_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,314 INFO L280 TraceCheckUtils]: 9: Hoare triple {185#true} ~p_dw_i~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,315 INFO L280 TraceCheckUtils]: 10: Hoare triple {185#true} ~c_num_read~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,315 INFO L280 TraceCheckUtils]: 11: Hoare triple {185#true} ~c_last_read~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,315 INFO L280 TraceCheckUtils]: 12: Hoare triple {185#true} ~c_dr_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,316 INFO L280 TraceCheckUtils]: 13: Hoare triple {185#true} ~c_dr_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,316 INFO L280 TraceCheckUtils]: 14: Hoare triple {185#true} ~c_dr_i~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,316 INFO L280 TraceCheckUtils]: 15: Hoare triple {185#true} ~a_t~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,317 INFO L280 TraceCheckUtils]: 16: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,317 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {185#true} {185#true} #361#return; {185#true} is VALID [2020-07-10 20:26:04,317 INFO L263 TraceCheckUtils]: 18: Hoare triple {185#true} call #t~ret8 := main(); {185#true} is VALID [2020-07-10 20:26:04,318 INFO L280 TraceCheckUtils]: 19: Hoare triple {185#true} havoc ~__retres1~3; {185#true} is VALID [2020-07-10 20:26:04,319 INFO L263 TraceCheckUtils]: 20: Hoare triple {185#true} call init_model(); {255#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:04,320 INFO L280 TraceCheckUtils]: 21: Hoare triple {255#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,320 INFO L280 TraceCheckUtils]: 22: Hoare triple {185#true} ~q_write_ev~0 := 2; {185#true} is VALID [2020-07-10 20:26:04,321 INFO L280 TraceCheckUtils]: 23: Hoare triple {185#true} ~q_read_ev~0 := ~q_write_ev~0; {185#true} is VALID [2020-07-10 20:26:04,321 INFO L280 TraceCheckUtils]: 24: Hoare triple {185#true} ~p_num_write~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,321 INFO L280 TraceCheckUtils]: 25: Hoare triple {185#true} ~p_dw_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,322 INFO L280 TraceCheckUtils]: 26: Hoare triple {185#true} ~p_dw_i~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,322 INFO L280 TraceCheckUtils]: 27: Hoare triple {185#true} ~c_num_read~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,322 INFO L280 TraceCheckUtils]: 28: Hoare triple {185#true} ~c_dr_pc~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,322 INFO L280 TraceCheckUtils]: 29: Hoare triple {185#true} ~c_dr_i~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,323 INFO L280 TraceCheckUtils]: 30: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,323 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {185#true} {185#true} #337#return; {185#true} is VALID [2020-07-10 20:26:04,323 INFO L263 TraceCheckUtils]: 32: Hoare triple {185#true} call start_simulation(); {185#true} is VALID [2020-07-10 20:26:04,324 INFO L280 TraceCheckUtils]: 33: Hoare triple {185#true} havoc ~kernel_st~0; {185#true} is VALID [2020-07-10 20:26:04,324 INFO L280 TraceCheckUtils]: 34: Hoare triple {185#true} havoc ~tmp~3; {185#true} is VALID [2020-07-10 20:26:04,324 INFO L280 TraceCheckUtils]: 35: Hoare triple {185#true} ~kernel_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,326 INFO L263 TraceCheckUtils]: 36: Hoare triple {185#true} call init_threads(); {256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:04,326 INFO L280 TraceCheckUtils]: 37: Hoare triple {256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {185#true} is VALID [2020-07-10 20:26:04,326 INFO L280 TraceCheckUtils]: 38: Hoare triple {185#true} ~p_dw_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,327 INFO L280 TraceCheckUtils]: 39: Hoare triple {185#true} assume 1 == ~c_dr_i~0; {185#true} is VALID [2020-07-10 20:26:04,327 INFO L280 TraceCheckUtils]: 40: Hoare triple {185#true} ~c_dr_st~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,327 INFO L280 TraceCheckUtils]: 41: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,328 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {185#true} {185#true} #355#return; {185#true} is VALID [2020-07-10 20:26:04,328 INFO L280 TraceCheckUtils]: 43: Hoare triple {185#true} assume !false; {185#true} is VALID [2020-07-10 20:26:04,328 INFO L280 TraceCheckUtils]: 44: Hoare triple {185#true} ~kernel_st~0 := 1; {185#true} is VALID [2020-07-10 20:26:04,329 INFO L263 TraceCheckUtils]: 45: Hoare triple {185#true} call eval(); {185#true} is VALID [2020-07-10 20:26:04,329 INFO L280 TraceCheckUtils]: 46: Hoare triple {185#true} havoc ~tmp~1; {185#true} is VALID [2020-07-10 20:26:04,329 INFO L280 TraceCheckUtils]: 47: Hoare triple {185#true} havoc ~tmp___0~1; {185#true} is VALID [2020-07-10 20:26:04,330 INFO L280 TraceCheckUtils]: 48: Hoare triple {185#true} havoc ~tmp___1~0; {185#true} is VALID [2020-07-10 20:26:04,330 INFO L280 TraceCheckUtils]: 49: Hoare triple {185#true} assume !false; {185#true} is VALID [2020-07-10 20:26:04,330 INFO L263 TraceCheckUtils]: 50: Hoare triple {185#true} call #t~ret3 := exists_runnable_thread(); {185#true} is VALID [2020-07-10 20:26:04,331 INFO L280 TraceCheckUtils]: 51: Hoare triple {185#true} havoc ~__retres1~2; {185#true} is VALID [2020-07-10 20:26:04,332 INFO L280 TraceCheckUtils]: 52: Hoare triple {185#true} assume 0 == ~p_dw_st~0; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,332 INFO L280 TraceCheckUtils]: 53: Hoare triple {227#(= 0 ~p_dw_st~0)} ~__retres1~2 := 1; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,333 INFO L280 TraceCheckUtils]: 54: Hoare triple {227#(= 0 ~p_dw_st~0)} #res := ~__retres1~2; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,334 INFO L280 TraceCheckUtils]: 55: Hoare triple {227#(= 0 ~p_dw_st~0)} assume true; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,335 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {227#(= 0 ~p_dw_st~0)} {185#true} #347#return; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,336 INFO L280 TraceCheckUtils]: 57: Hoare triple {227#(= 0 ~p_dw_st~0)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,337 INFO L280 TraceCheckUtils]: 58: Hoare triple {227#(= 0 ~p_dw_st~0)} ~tmp___1~0 := #t~ret3; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,338 INFO L280 TraceCheckUtils]: 59: Hoare triple {227#(= 0 ~p_dw_st~0)} havoc #t~ret3; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,338 INFO L280 TraceCheckUtils]: 60: Hoare triple {227#(= 0 ~p_dw_st~0)} assume 0 != ~tmp___1~0; {227#(= 0 ~p_dw_st~0)} is VALID [2020-07-10 20:26:04,339 INFO L280 TraceCheckUtils]: 61: Hoare triple {227#(= 0 ~p_dw_st~0)} assume !(0 == ~p_dw_st~0); {186#false} is VALID [2020-07-10 20:26:04,340 INFO L280 TraceCheckUtils]: 62: Hoare triple {186#false} assume 0 == ~c_dr_st~0; {186#false} is VALID [2020-07-10 20:26:04,340 INFO L280 TraceCheckUtils]: 63: Hoare triple {186#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {186#false} is VALID [2020-07-10 20:26:04,340 INFO L280 TraceCheckUtils]: 64: Hoare triple {186#false} ~tmp___0~1 := #t~nondet5; {186#false} is VALID [2020-07-10 20:26:04,341 INFO L280 TraceCheckUtils]: 65: Hoare triple {186#false} havoc #t~nondet5; {186#false} is VALID [2020-07-10 20:26:04,341 INFO L280 TraceCheckUtils]: 66: Hoare triple {186#false} assume 0 != ~tmp___0~1; {186#false} is VALID [2020-07-10 20:26:04,341 INFO L280 TraceCheckUtils]: 67: Hoare triple {186#false} ~c_dr_st~0 := 1; {186#false} is VALID [2020-07-10 20:26:04,342 INFO L263 TraceCheckUtils]: 68: Hoare triple {186#false} call do_read_c(); {186#false} is VALID [2020-07-10 20:26:04,342 INFO L280 TraceCheckUtils]: 69: Hoare triple {186#false} havoc ~a~0; {186#false} is VALID [2020-07-10 20:26:04,342 INFO L280 TraceCheckUtils]: 70: Hoare triple {186#false} assume 0 == ~c_dr_pc~0; {186#false} is VALID [2020-07-10 20:26:04,342 INFO L280 TraceCheckUtils]: 71: Hoare triple {186#false} assume !false; {186#false} is VALID [2020-07-10 20:26:04,343 INFO L280 TraceCheckUtils]: 72: Hoare triple {186#false} assume !(1 == ~q_free~0); {186#false} is VALID [2020-07-10 20:26:04,343 INFO L280 TraceCheckUtils]: 73: Hoare triple {186#false} ~a~0 := ~q_buf_0~0; {186#false} is VALID [2020-07-10 20:26:04,343 INFO L280 TraceCheckUtils]: 74: Hoare triple {186#false} ~c_last_read~0 := ~a~0; {186#false} is VALID [2020-07-10 20:26:04,344 INFO L280 TraceCheckUtils]: 75: Hoare triple {186#false} ~c_num_read~0 := 1 + ~c_num_read~0; {186#false} is VALID [2020-07-10 20:26:04,344 INFO L280 TraceCheckUtils]: 76: Hoare triple {186#false} ~q_free~0 := 1; {186#false} is VALID [2020-07-10 20:26:04,344 INFO L280 TraceCheckUtils]: 77: Hoare triple {186#false} ~q_read_ev~0 := 1; {186#false} is VALID [2020-07-10 20:26:04,345 INFO L263 TraceCheckUtils]: 78: Hoare triple {186#false} call immediate_notify_threads(); {256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:04,345 INFO L280 TraceCheckUtils]: 79: Hoare triple {256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {185#true} is VALID [2020-07-10 20:26:04,345 INFO L280 TraceCheckUtils]: 80: Hoare triple {185#true} havoc ~tmp___0~0; {185#true} is VALID [2020-07-10 20:26:04,346 INFO L263 TraceCheckUtils]: 81: Hoare triple {185#true} call #t~ret0 := is_do_write_p_triggered(); {185#true} is VALID [2020-07-10 20:26:04,346 INFO L280 TraceCheckUtils]: 82: Hoare triple {185#true} havoc ~__retres1~0; {185#true} is VALID [2020-07-10 20:26:04,346 INFO L280 TraceCheckUtils]: 83: Hoare triple {185#true} assume !(1 == ~p_dw_pc~0); {185#true} is VALID [2020-07-10 20:26:04,347 INFO L280 TraceCheckUtils]: 84: Hoare triple {185#true} ~__retres1~0 := 0; {185#true} is VALID [2020-07-10 20:26:04,347 INFO L280 TraceCheckUtils]: 85: Hoare triple {185#true} #res := ~__retres1~0; {185#true} is VALID [2020-07-10 20:26:04,347 INFO L280 TraceCheckUtils]: 86: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,348 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {185#true} {185#true} #343#return; {185#true} is VALID [2020-07-10 20:26:04,348 INFO L280 TraceCheckUtils]: 88: Hoare triple {185#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {185#true} is VALID [2020-07-10 20:26:04,348 INFO L280 TraceCheckUtils]: 89: Hoare triple {185#true} ~tmp~0 := #t~ret0; {185#true} is VALID [2020-07-10 20:26:04,348 INFO L280 TraceCheckUtils]: 90: Hoare triple {185#true} havoc #t~ret0; {185#true} is VALID [2020-07-10 20:26:04,349 INFO L280 TraceCheckUtils]: 91: Hoare triple {185#true} assume !(0 != ~tmp~0); {185#true} is VALID [2020-07-10 20:26:04,349 INFO L263 TraceCheckUtils]: 92: Hoare triple {185#true} call #t~ret1 := is_do_read_c_triggered(); {185#true} is VALID [2020-07-10 20:26:04,349 INFO L280 TraceCheckUtils]: 93: Hoare triple {185#true} havoc ~__retres1~1; {185#true} is VALID [2020-07-10 20:26:04,350 INFO L280 TraceCheckUtils]: 94: Hoare triple {185#true} assume !(1 == ~c_dr_pc~0); {185#true} is VALID [2020-07-10 20:26:04,350 INFO L280 TraceCheckUtils]: 95: Hoare triple {185#true} ~__retres1~1 := 0; {185#true} is VALID [2020-07-10 20:26:04,350 INFO L280 TraceCheckUtils]: 96: Hoare triple {185#true} #res := ~__retres1~1; {185#true} is VALID [2020-07-10 20:26:04,351 INFO L280 TraceCheckUtils]: 97: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,351 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {185#true} {185#true} #345#return; {185#true} is VALID [2020-07-10 20:26:04,351 INFO L280 TraceCheckUtils]: 99: Hoare triple {185#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {185#true} is VALID [2020-07-10 20:26:04,352 INFO L280 TraceCheckUtils]: 100: Hoare triple {185#true} ~tmp___0~0 := #t~ret1; {185#true} is VALID [2020-07-10 20:26:04,352 INFO L280 TraceCheckUtils]: 101: Hoare triple {185#true} havoc #t~ret1; {185#true} is VALID [2020-07-10 20:26:04,352 INFO L280 TraceCheckUtils]: 102: Hoare triple {185#true} assume !(0 != ~tmp___0~0); {185#true} is VALID [2020-07-10 20:26:04,353 INFO L280 TraceCheckUtils]: 103: Hoare triple {185#true} assume true; {185#true} is VALID [2020-07-10 20:26:04,353 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {185#true} {186#false} #365#return; {186#false} is VALID [2020-07-10 20:26:04,353 INFO L280 TraceCheckUtils]: 105: Hoare triple {186#false} ~q_read_ev~0 := 2; {186#false} is VALID [2020-07-10 20:26:04,354 INFO L280 TraceCheckUtils]: 106: Hoare triple {186#false} assume !(~p_last_write~0 == ~c_last_read~0); {186#false} is VALID [2020-07-10 20:26:04,354 INFO L263 TraceCheckUtils]: 107: Hoare triple {186#false} call error(); {186#false} is VALID [2020-07-10 20:26:04,354 INFO L280 TraceCheckUtils]: 108: Hoare triple {186#false} assume !false; {186#false} is VALID [2020-07-10 20:26:04,371 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:26:04,372 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:26:04,374 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [940919837] [2020-07-10 20:26:04,376 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:26:04,376 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2020-07-10 20:26:04,377 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2077098920] [2020-07-10 20:26:04,384 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 109 [2020-07-10 20:26:04,387 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:26:04,391 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-10 20:26:04,542 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:04,542 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-10 20:26:04,543 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:26:04,551 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-10 20:26:04,553 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-10 20:26:04,555 INFO L87 Difference]: Start difference. First operand 182 states. Second operand 6 states. [2020-07-10 20:26:09,759 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:09,760 INFO L93 Difference]: Finished difference Result 573 states and 771 transitions. [2020-07-10 20:26:09,760 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2020-07-10 20:26:09,760 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 109 [2020-07-10 20:26:09,761 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:26:09,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-10 20:26:09,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 771 transitions. [2020-07-10 20:26:09,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-10 20:26:09,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 771 transitions. [2020-07-10 20:26:09,849 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 771 transitions. [2020-07-10 20:26:11,027 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 771 edges. 771 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:11,076 INFO L225 Difference]: With dead ends: 573 [2020-07-10 20:26:11,077 INFO L226 Difference]: Without dead ends: 416 [2020-07-10 20:26:11,083 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2020-07-10 20:26:11,103 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 416 states. [2020-07-10 20:26:12,695 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 416 to 305. [2020-07-10 20:26:12,696 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:26:12,696 INFO L82 GeneralOperation]: Start isEquivalent. First operand 416 states. Second operand 305 states. [2020-07-10 20:26:12,697 INFO L74 IsIncluded]: Start isIncluded. First operand 416 states. Second operand 305 states. [2020-07-10 20:26:12,697 INFO L87 Difference]: Start difference. First operand 416 states. Second operand 305 states. [2020-07-10 20:26:12,759 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:12,760 INFO L93 Difference]: Finished difference Result 416 states and 515 transitions. [2020-07-10 20:26:12,760 INFO L276 IsEmpty]: Start isEmpty. Operand 416 states and 515 transitions. [2020-07-10 20:26:12,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:26:12,768 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:26:12,768 INFO L74 IsIncluded]: Start isIncluded. First operand 305 states. Second operand 416 states. [2020-07-10 20:26:12,768 INFO L87 Difference]: Start difference. First operand 305 states. Second operand 416 states. [2020-07-10 20:26:12,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:12,826 INFO L93 Difference]: Finished difference Result 416 states and 515 transitions. [2020-07-10 20:26:12,827 INFO L276 IsEmpty]: Start isEmpty. Operand 416 states and 515 transitions. [2020-07-10 20:26:12,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:26:12,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:26:12,831 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:26:12,831 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:26:12,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 305 states. [2020-07-10 20:26:12,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 305 states to 305 states and 366 transitions. [2020-07-10 20:26:12,848 INFO L78 Accepts]: Start accepts. Automaton has 305 states and 366 transitions. Word has length 109 [2020-07-10 20:26:12,849 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:26:12,849 INFO L479 AbstractCegarLoop]: Abstraction has 305 states and 366 transitions. [2020-07-10 20:26:12,849 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-10 20:26:12,849 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 305 states and 366 transitions. [2020-07-10 20:26:13,526 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 366 edges. 366 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:13,526 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 366 transitions. [2020-07-10 20:26:13,530 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2020-07-10 20:26:13,530 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:26:13,530 INFO L422 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:26:13,531 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-10 20:26:13,531 INFO L427 AbstractCegarLoop]: === Iteration 2 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:26:13,531 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:26:13,531 INFO L82 PathProgramCache]: Analyzing trace with hash -388258462, now seen corresponding path program 1 times [2020-07-10 20:26:13,532 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:26:13,532 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [331212172] [2020-07-10 20:26:13,532 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:26:13,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,704 INFO L280 TraceCheckUtils]: 0: Hoare triple {2943#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,705 INFO L280 TraceCheckUtils]: 1: Hoare triple {2873#true} ~q_free~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,705 INFO L280 TraceCheckUtils]: 2: Hoare triple {2873#true} ~q_read_ev~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,705 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} ~q_write_ev~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,706 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} ~p_num_write~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,706 INFO L280 TraceCheckUtils]: 5: Hoare triple {2873#true} ~p_last_write~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,706 INFO L280 TraceCheckUtils]: 6: Hoare triple {2873#true} ~p_dw_st~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,706 INFO L280 TraceCheckUtils]: 7: Hoare triple {2873#true} ~p_dw_pc~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,707 INFO L280 TraceCheckUtils]: 8: Hoare triple {2873#true} ~p_dw_i~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,707 INFO L280 TraceCheckUtils]: 9: Hoare triple {2873#true} ~c_num_read~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,707 INFO L280 TraceCheckUtils]: 10: Hoare triple {2873#true} ~c_last_read~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,707 INFO L280 TraceCheckUtils]: 11: Hoare triple {2873#true} ~c_dr_st~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,708 INFO L280 TraceCheckUtils]: 12: Hoare triple {2873#true} ~c_dr_pc~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,708 INFO L280 TraceCheckUtils]: 13: Hoare triple {2873#true} ~c_dr_i~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,709 INFO L280 TraceCheckUtils]: 14: Hoare triple {2873#true} ~a_t~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,709 INFO L280 TraceCheckUtils]: 15: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,710 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2873#true} {2873#true} #361#return; {2873#true} is VALID [2020-07-10 20:26:13,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,772 INFO L280 TraceCheckUtils]: 0: Hoare triple {2944#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {2873#true} is VALID [2020-07-10 20:26:13,772 INFO L280 TraceCheckUtils]: 1: Hoare triple {2873#true} ~q_write_ev~0 := 2; {2873#true} is VALID [2020-07-10 20:26:13,773 INFO L280 TraceCheckUtils]: 2: Hoare triple {2873#true} ~q_read_ev~0 := ~q_write_ev~0; {2873#true} is VALID [2020-07-10 20:26:13,773 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} ~p_num_write~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,773 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} ~p_dw_pc~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,774 INFO L280 TraceCheckUtils]: 5: Hoare triple {2873#true} ~p_dw_i~0 := 1; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,774 INFO L280 TraceCheckUtils]: 6: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~c_num_read~0 := 0; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,775 INFO L280 TraceCheckUtils]: 7: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~c_dr_pc~0 := 0; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,775 INFO L280 TraceCheckUtils]: 8: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~c_dr_i~0 := 1; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,776 INFO L280 TraceCheckUtils]: 9: Hoare triple {2903#(= 1 ~p_dw_i~0)} assume true; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,777 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {2903#(= 1 ~p_dw_i~0)} {2873#true} #337#return; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,802 INFO L280 TraceCheckUtils]: 0: Hoare triple {2945#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume !(1 == ~p_dw_i~0); {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,804 INFO L280 TraceCheckUtils]: 1: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} ~p_dw_st~0 := 2; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,804 INFO L280 TraceCheckUtils]: 2: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} assume 1 == ~c_dr_i~0; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,805 INFO L280 TraceCheckUtils]: 3: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} ~c_dr_st~0 := 0; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,805 INFO L280 TraceCheckUtils]: 4: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} assume true; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,806 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2946#(not (= 1 ~p_dw_i~0))} {2903#(= 1 ~p_dw_i~0)} #355#return; {2874#false} is VALID [2020-07-10 20:26:13,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,813 INFO L280 TraceCheckUtils]: 0: Hoare triple {2873#true} havoc ~__retres1~2; {2873#true} is VALID [2020-07-10 20:26:13,814 INFO L280 TraceCheckUtils]: 1: Hoare triple {2873#true} assume !(0 == ~p_dw_st~0); {2873#true} is VALID [2020-07-10 20:26:13,814 INFO L280 TraceCheckUtils]: 2: Hoare triple {2873#true} assume 0 == ~c_dr_st~0; {2873#true} is VALID [2020-07-10 20:26:13,814 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} ~__retres1~2 := 1; {2873#true} is VALID [2020-07-10 20:26:13,814 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} #res := ~__retres1~2; {2873#true} is VALID [2020-07-10 20:26:13,815 INFO L280 TraceCheckUtils]: 5: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,815 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {2873#true} {2874#false} #347#return; {2874#false} is VALID [2020-07-10 20:26:13,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,829 INFO L280 TraceCheckUtils]: 0: Hoare triple {2873#true} havoc ~__retres1~0; {2873#true} is VALID [2020-07-10 20:26:13,830 INFO L280 TraceCheckUtils]: 1: Hoare triple {2873#true} assume !(1 == ~p_dw_pc~0); {2873#true} is VALID [2020-07-10 20:26:13,830 INFO L280 TraceCheckUtils]: 2: Hoare triple {2873#true} ~__retres1~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,830 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} #res := ~__retres1~0; {2873#true} is VALID [2020-07-10 20:26:13,831 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,831 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2873#true} {2873#true} #343#return; {2873#true} is VALID [2020-07-10 20:26:13,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:13,835 INFO L280 TraceCheckUtils]: 0: Hoare triple {2873#true} havoc ~__retres1~1; {2873#true} is VALID [2020-07-10 20:26:13,835 INFO L280 TraceCheckUtils]: 1: Hoare triple {2873#true} assume !(1 == ~c_dr_pc~0); {2873#true} is VALID [2020-07-10 20:26:13,835 INFO L280 TraceCheckUtils]: 2: Hoare triple {2873#true} ~__retres1~1 := 0; {2873#true} is VALID [2020-07-10 20:26:13,836 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} #res := ~__retres1~1; {2873#true} is VALID [2020-07-10 20:26:13,836 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,836 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2873#true} {2873#true} #345#return; {2873#true} is VALID [2020-07-10 20:26:13,836 INFO L280 TraceCheckUtils]: 0: Hoare triple {2945#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {2873#true} is VALID [2020-07-10 20:26:13,837 INFO L280 TraceCheckUtils]: 1: Hoare triple {2873#true} havoc ~tmp___0~0; {2873#true} is VALID [2020-07-10 20:26:13,837 INFO L263 TraceCheckUtils]: 2: Hoare triple {2873#true} call #t~ret0 := is_do_write_p_triggered(); {2873#true} is VALID [2020-07-10 20:26:13,837 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} havoc ~__retres1~0; {2873#true} is VALID [2020-07-10 20:26:13,837 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} assume !(1 == ~p_dw_pc~0); {2873#true} is VALID [2020-07-10 20:26:13,838 INFO L280 TraceCheckUtils]: 5: Hoare triple {2873#true} ~__retres1~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,838 INFO L280 TraceCheckUtils]: 6: Hoare triple {2873#true} #res := ~__retres1~0; {2873#true} is VALID [2020-07-10 20:26:13,838 INFO L280 TraceCheckUtils]: 7: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,838 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {2873#true} {2873#true} #343#return; {2873#true} is VALID [2020-07-10 20:26:13,839 INFO L280 TraceCheckUtils]: 9: Hoare triple {2873#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2873#true} is VALID [2020-07-10 20:26:13,839 INFO L280 TraceCheckUtils]: 10: Hoare triple {2873#true} ~tmp~0 := #t~ret0; {2873#true} is VALID [2020-07-10 20:26:13,839 INFO L280 TraceCheckUtils]: 11: Hoare triple {2873#true} havoc #t~ret0; {2873#true} is VALID [2020-07-10 20:26:13,839 INFO L280 TraceCheckUtils]: 12: Hoare triple {2873#true} assume !(0 != ~tmp~0); {2873#true} is VALID [2020-07-10 20:26:13,840 INFO L263 TraceCheckUtils]: 13: Hoare triple {2873#true} call #t~ret1 := is_do_read_c_triggered(); {2873#true} is VALID [2020-07-10 20:26:13,840 INFO L280 TraceCheckUtils]: 14: Hoare triple {2873#true} havoc ~__retres1~1; {2873#true} is VALID [2020-07-10 20:26:13,840 INFO L280 TraceCheckUtils]: 15: Hoare triple {2873#true} assume !(1 == ~c_dr_pc~0); {2873#true} is VALID [2020-07-10 20:26:13,841 INFO L280 TraceCheckUtils]: 16: Hoare triple {2873#true} ~__retres1~1 := 0; {2873#true} is VALID [2020-07-10 20:26:13,841 INFO L280 TraceCheckUtils]: 17: Hoare triple {2873#true} #res := ~__retres1~1; {2873#true} is VALID [2020-07-10 20:26:13,841 INFO L280 TraceCheckUtils]: 18: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,841 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {2873#true} {2873#true} #345#return; {2873#true} is VALID [2020-07-10 20:26:13,842 INFO L280 TraceCheckUtils]: 20: Hoare triple {2873#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {2873#true} is VALID [2020-07-10 20:26:13,842 INFO L280 TraceCheckUtils]: 21: Hoare triple {2873#true} ~tmp___0~0 := #t~ret1; {2873#true} is VALID [2020-07-10 20:26:13,842 INFO L280 TraceCheckUtils]: 22: Hoare triple {2873#true} havoc #t~ret1; {2873#true} is VALID [2020-07-10 20:26:13,842 INFO L280 TraceCheckUtils]: 23: Hoare triple {2873#true} assume !(0 != ~tmp___0~0); {2873#true} is VALID [2020-07-10 20:26:13,843 INFO L280 TraceCheckUtils]: 24: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,843 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {2873#true} {2874#false} #365#return; {2874#false} is VALID [2020-07-10 20:26:13,845 INFO L263 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2943#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:13,846 INFO L280 TraceCheckUtils]: 1: Hoare triple {2943#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,846 INFO L280 TraceCheckUtils]: 2: Hoare triple {2873#true} ~q_free~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,846 INFO L280 TraceCheckUtils]: 3: Hoare triple {2873#true} ~q_read_ev~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,846 INFO L280 TraceCheckUtils]: 4: Hoare triple {2873#true} ~q_write_ev~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,847 INFO L280 TraceCheckUtils]: 5: Hoare triple {2873#true} ~p_num_write~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,847 INFO L280 TraceCheckUtils]: 6: Hoare triple {2873#true} ~p_last_write~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,847 INFO L280 TraceCheckUtils]: 7: Hoare triple {2873#true} ~p_dw_st~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,847 INFO L280 TraceCheckUtils]: 8: Hoare triple {2873#true} ~p_dw_pc~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,848 INFO L280 TraceCheckUtils]: 9: Hoare triple {2873#true} ~p_dw_i~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,848 INFO L280 TraceCheckUtils]: 10: Hoare triple {2873#true} ~c_num_read~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,848 INFO L280 TraceCheckUtils]: 11: Hoare triple {2873#true} ~c_last_read~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,848 INFO L280 TraceCheckUtils]: 12: Hoare triple {2873#true} ~c_dr_st~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,849 INFO L280 TraceCheckUtils]: 13: Hoare triple {2873#true} ~c_dr_pc~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,849 INFO L280 TraceCheckUtils]: 14: Hoare triple {2873#true} ~c_dr_i~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,849 INFO L280 TraceCheckUtils]: 15: Hoare triple {2873#true} ~a_t~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,849 INFO L280 TraceCheckUtils]: 16: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,850 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {2873#true} {2873#true} #361#return; {2873#true} is VALID [2020-07-10 20:26:13,850 INFO L263 TraceCheckUtils]: 18: Hoare triple {2873#true} call #t~ret8 := main(); {2873#true} is VALID [2020-07-10 20:26:13,850 INFO L280 TraceCheckUtils]: 19: Hoare triple {2873#true} havoc ~__retres1~3; {2873#true} is VALID [2020-07-10 20:26:13,851 INFO L263 TraceCheckUtils]: 20: Hoare triple {2873#true} call init_model(); {2944#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:13,852 INFO L280 TraceCheckUtils]: 21: Hoare triple {2944#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {2873#true} is VALID [2020-07-10 20:26:13,852 INFO L280 TraceCheckUtils]: 22: Hoare triple {2873#true} ~q_write_ev~0 := 2; {2873#true} is VALID [2020-07-10 20:26:13,852 INFO L280 TraceCheckUtils]: 23: Hoare triple {2873#true} ~q_read_ev~0 := ~q_write_ev~0; {2873#true} is VALID [2020-07-10 20:26:13,853 INFO L280 TraceCheckUtils]: 24: Hoare triple {2873#true} ~p_num_write~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,853 INFO L280 TraceCheckUtils]: 25: Hoare triple {2873#true} ~p_dw_pc~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,854 INFO L280 TraceCheckUtils]: 26: Hoare triple {2873#true} ~p_dw_i~0 := 1; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,854 INFO L280 TraceCheckUtils]: 27: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~c_num_read~0 := 0; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,855 INFO L280 TraceCheckUtils]: 28: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~c_dr_pc~0 := 0; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,855 INFO L280 TraceCheckUtils]: 29: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~c_dr_i~0 := 1; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,856 INFO L280 TraceCheckUtils]: 30: Hoare triple {2903#(= 1 ~p_dw_i~0)} assume true; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,856 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {2903#(= 1 ~p_dw_i~0)} {2873#true} #337#return; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,857 INFO L263 TraceCheckUtils]: 32: Hoare triple {2903#(= 1 ~p_dw_i~0)} call start_simulation(); {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,857 INFO L280 TraceCheckUtils]: 33: Hoare triple {2903#(= 1 ~p_dw_i~0)} havoc ~kernel_st~0; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,858 INFO L280 TraceCheckUtils]: 34: Hoare triple {2903#(= 1 ~p_dw_i~0)} havoc ~tmp~3; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,858 INFO L280 TraceCheckUtils]: 35: Hoare triple {2903#(= 1 ~p_dw_i~0)} ~kernel_st~0 := 0; {2903#(= 1 ~p_dw_i~0)} is VALID [2020-07-10 20:26:13,859 INFO L263 TraceCheckUtils]: 36: Hoare triple {2903#(= 1 ~p_dw_i~0)} call init_threads(); {2945#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:13,860 INFO L280 TraceCheckUtils]: 37: Hoare triple {2945#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume !(1 == ~p_dw_i~0); {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,864 INFO L280 TraceCheckUtils]: 38: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} ~p_dw_st~0 := 2; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,867 INFO L280 TraceCheckUtils]: 39: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} assume 1 == ~c_dr_i~0; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,868 INFO L280 TraceCheckUtils]: 40: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} ~c_dr_st~0 := 0; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,869 INFO L280 TraceCheckUtils]: 41: Hoare triple {2946#(not (= 1 ~p_dw_i~0))} assume true; {2946#(not (= 1 ~p_dw_i~0))} is VALID [2020-07-10 20:26:13,869 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {2946#(not (= 1 ~p_dw_i~0))} {2903#(= 1 ~p_dw_i~0)} #355#return; {2874#false} is VALID [2020-07-10 20:26:13,870 INFO L280 TraceCheckUtils]: 43: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2020-07-10 20:26:13,870 INFO L280 TraceCheckUtils]: 44: Hoare triple {2874#false} ~kernel_st~0 := 1; {2874#false} is VALID [2020-07-10 20:26:13,870 INFO L263 TraceCheckUtils]: 45: Hoare triple {2874#false} call eval(); {2874#false} is VALID [2020-07-10 20:26:13,870 INFO L280 TraceCheckUtils]: 46: Hoare triple {2874#false} havoc ~tmp~1; {2874#false} is VALID [2020-07-10 20:26:13,871 INFO L280 TraceCheckUtils]: 47: Hoare triple {2874#false} havoc ~tmp___0~1; {2874#false} is VALID [2020-07-10 20:26:13,871 INFO L280 TraceCheckUtils]: 48: Hoare triple {2874#false} havoc ~tmp___1~0; {2874#false} is VALID [2020-07-10 20:26:13,871 INFO L280 TraceCheckUtils]: 49: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2020-07-10 20:26:13,871 INFO L263 TraceCheckUtils]: 50: Hoare triple {2874#false} call #t~ret3 := exists_runnable_thread(); {2873#true} is VALID [2020-07-10 20:26:13,872 INFO L280 TraceCheckUtils]: 51: Hoare triple {2873#true} havoc ~__retres1~2; {2873#true} is VALID [2020-07-10 20:26:13,872 INFO L280 TraceCheckUtils]: 52: Hoare triple {2873#true} assume !(0 == ~p_dw_st~0); {2873#true} is VALID [2020-07-10 20:26:13,872 INFO L280 TraceCheckUtils]: 53: Hoare triple {2873#true} assume 0 == ~c_dr_st~0; {2873#true} is VALID [2020-07-10 20:26:13,872 INFO L280 TraceCheckUtils]: 54: Hoare triple {2873#true} ~__retres1~2 := 1; {2873#true} is VALID [2020-07-10 20:26:13,873 INFO L280 TraceCheckUtils]: 55: Hoare triple {2873#true} #res := ~__retres1~2; {2873#true} is VALID [2020-07-10 20:26:13,873 INFO L280 TraceCheckUtils]: 56: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,873 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {2873#true} {2874#false} #347#return; {2874#false} is VALID [2020-07-10 20:26:13,873 INFO L280 TraceCheckUtils]: 58: Hoare triple {2874#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {2874#false} is VALID [2020-07-10 20:26:13,873 INFO L280 TraceCheckUtils]: 59: Hoare triple {2874#false} ~tmp___1~0 := #t~ret3; {2874#false} is VALID [2020-07-10 20:26:13,874 INFO L280 TraceCheckUtils]: 60: Hoare triple {2874#false} havoc #t~ret3; {2874#false} is VALID [2020-07-10 20:26:13,874 INFO L280 TraceCheckUtils]: 61: Hoare triple {2874#false} assume 0 != ~tmp___1~0; {2874#false} is VALID [2020-07-10 20:26:13,874 INFO L280 TraceCheckUtils]: 62: Hoare triple {2874#false} assume !(0 == ~p_dw_st~0); {2874#false} is VALID [2020-07-10 20:26:13,874 INFO L280 TraceCheckUtils]: 63: Hoare triple {2874#false} assume 0 == ~c_dr_st~0; {2874#false} is VALID [2020-07-10 20:26:13,875 INFO L280 TraceCheckUtils]: 64: Hoare triple {2874#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2874#false} is VALID [2020-07-10 20:26:13,875 INFO L280 TraceCheckUtils]: 65: Hoare triple {2874#false} ~tmp___0~1 := #t~nondet5; {2874#false} is VALID [2020-07-10 20:26:13,875 INFO L280 TraceCheckUtils]: 66: Hoare triple {2874#false} havoc #t~nondet5; {2874#false} is VALID [2020-07-10 20:26:13,875 INFO L280 TraceCheckUtils]: 67: Hoare triple {2874#false} assume 0 != ~tmp___0~1; {2874#false} is VALID [2020-07-10 20:26:13,876 INFO L280 TraceCheckUtils]: 68: Hoare triple {2874#false} ~c_dr_st~0 := 1; {2874#false} is VALID [2020-07-10 20:26:13,876 INFO L263 TraceCheckUtils]: 69: Hoare triple {2874#false} call do_read_c(); {2874#false} is VALID [2020-07-10 20:26:13,876 INFO L280 TraceCheckUtils]: 70: Hoare triple {2874#false} havoc ~a~0; {2874#false} is VALID [2020-07-10 20:26:13,876 INFO L280 TraceCheckUtils]: 71: Hoare triple {2874#false} assume 0 == ~c_dr_pc~0; {2874#false} is VALID [2020-07-10 20:26:13,876 INFO L280 TraceCheckUtils]: 72: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2020-07-10 20:26:13,877 INFO L280 TraceCheckUtils]: 73: Hoare triple {2874#false} assume !(1 == ~q_free~0); {2874#false} is VALID [2020-07-10 20:26:13,877 INFO L280 TraceCheckUtils]: 74: Hoare triple {2874#false} ~a~0 := ~q_buf_0~0; {2874#false} is VALID [2020-07-10 20:26:13,877 INFO L280 TraceCheckUtils]: 75: Hoare triple {2874#false} ~c_last_read~0 := ~a~0; {2874#false} is VALID [2020-07-10 20:26:13,877 INFO L280 TraceCheckUtils]: 76: Hoare triple {2874#false} ~c_num_read~0 := 1 + ~c_num_read~0; {2874#false} is VALID [2020-07-10 20:26:13,877 INFO L280 TraceCheckUtils]: 77: Hoare triple {2874#false} ~q_free~0 := 1; {2874#false} is VALID [2020-07-10 20:26:13,878 INFO L280 TraceCheckUtils]: 78: Hoare triple {2874#false} ~q_read_ev~0 := 1; {2874#false} is VALID [2020-07-10 20:26:13,878 INFO L263 TraceCheckUtils]: 79: Hoare triple {2874#false} call immediate_notify_threads(); {2945#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:13,878 INFO L280 TraceCheckUtils]: 80: Hoare triple {2945#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {2873#true} is VALID [2020-07-10 20:26:13,878 INFO L280 TraceCheckUtils]: 81: Hoare triple {2873#true} havoc ~tmp___0~0; {2873#true} is VALID [2020-07-10 20:26:13,879 INFO L263 TraceCheckUtils]: 82: Hoare triple {2873#true} call #t~ret0 := is_do_write_p_triggered(); {2873#true} is VALID [2020-07-10 20:26:13,879 INFO L280 TraceCheckUtils]: 83: Hoare triple {2873#true} havoc ~__retres1~0; {2873#true} is VALID [2020-07-10 20:26:13,879 INFO L280 TraceCheckUtils]: 84: Hoare triple {2873#true} assume !(1 == ~p_dw_pc~0); {2873#true} is VALID [2020-07-10 20:26:13,879 INFO L280 TraceCheckUtils]: 85: Hoare triple {2873#true} ~__retres1~0 := 0; {2873#true} is VALID [2020-07-10 20:26:13,880 INFO L280 TraceCheckUtils]: 86: Hoare triple {2873#true} #res := ~__retres1~0; {2873#true} is VALID [2020-07-10 20:26:13,880 INFO L280 TraceCheckUtils]: 87: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,880 INFO L275 TraceCheckUtils]: 88: Hoare quadruple {2873#true} {2873#true} #343#return; {2873#true} is VALID [2020-07-10 20:26:13,880 INFO L280 TraceCheckUtils]: 89: Hoare triple {2873#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2873#true} is VALID [2020-07-10 20:26:13,881 INFO L280 TraceCheckUtils]: 90: Hoare triple {2873#true} ~tmp~0 := #t~ret0; {2873#true} is VALID [2020-07-10 20:26:13,881 INFO L280 TraceCheckUtils]: 91: Hoare triple {2873#true} havoc #t~ret0; {2873#true} is VALID [2020-07-10 20:26:13,881 INFO L280 TraceCheckUtils]: 92: Hoare triple {2873#true} assume !(0 != ~tmp~0); {2873#true} is VALID [2020-07-10 20:26:13,881 INFO L263 TraceCheckUtils]: 93: Hoare triple {2873#true} call #t~ret1 := is_do_read_c_triggered(); {2873#true} is VALID [2020-07-10 20:26:13,882 INFO L280 TraceCheckUtils]: 94: Hoare triple {2873#true} havoc ~__retres1~1; {2873#true} is VALID [2020-07-10 20:26:13,882 INFO L280 TraceCheckUtils]: 95: Hoare triple {2873#true} assume !(1 == ~c_dr_pc~0); {2873#true} is VALID [2020-07-10 20:26:13,882 INFO L280 TraceCheckUtils]: 96: Hoare triple {2873#true} ~__retres1~1 := 0; {2873#true} is VALID [2020-07-10 20:26:13,882 INFO L280 TraceCheckUtils]: 97: Hoare triple {2873#true} #res := ~__retres1~1; {2873#true} is VALID [2020-07-10 20:26:13,883 INFO L280 TraceCheckUtils]: 98: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,883 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {2873#true} {2873#true} #345#return; {2873#true} is VALID [2020-07-10 20:26:13,883 INFO L280 TraceCheckUtils]: 100: Hoare triple {2873#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {2873#true} is VALID [2020-07-10 20:26:13,883 INFO L280 TraceCheckUtils]: 101: Hoare triple {2873#true} ~tmp___0~0 := #t~ret1; {2873#true} is VALID [2020-07-10 20:26:13,884 INFO L280 TraceCheckUtils]: 102: Hoare triple {2873#true} havoc #t~ret1; {2873#true} is VALID [2020-07-10 20:26:13,884 INFO L280 TraceCheckUtils]: 103: Hoare triple {2873#true} assume !(0 != ~tmp___0~0); {2873#true} is VALID [2020-07-10 20:26:13,884 INFO L280 TraceCheckUtils]: 104: Hoare triple {2873#true} assume true; {2873#true} is VALID [2020-07-10 20:26:13,884 INFO L275 TraceCheckUtils]: 105: Hoare quadruple {2873#true} {2874#false} #365#return; {2874#false} is VALID [2020-07-10 20:26:13,885 INFO L280 TraceCheckUtils]: 106: Hoare triple {2874#false} ~q_read_ev~0 := 2; {2874#false} is VALID [2020-07-10 20:26:13,885 INFO L280 TraceCheckUtils]: 107: Hoare triple {2874#false} assume !(~p_last_write~0 == ~c_last_read~0); {2874#false} is VALID [2020-07-10 20:26:13,885 INFO L263 TraceCheckUtils]: 108: Hoare triple {2874#false} call error(); {2874#false} is VALID [2020-07-10 20:26:13,885 INFO L280 TraceCheckUtils]: 109: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2020-07-10 20:26:13,892 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:26:13,892 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:26:13,893 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [331212172] [2020-07-10 20:26:13,893 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:26:13,893 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2020-07-10 20:26:13,893 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1504797051] [2020-07-10 20:26:13,894 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 110 [2020-07-10 20:26:13,895 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:26:13,895 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-10 20:26:14,013 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:14,013 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-10 20:26:14,014 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:26:14,014 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-10 20:26:14,015 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2020-07-10 20:26:14,015 INFO L87 Difference]: Start difference. First operand 305 states and 366 transitions. Second operand 7 states. [2020-07-10 20:26:18,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:18,884 INFO L93 Difference]: Finished difference Result 663 states and 819 transitions. [2020-07-10 20:26:18,884 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-10 20:26:18,885 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 110 [2020-07-10 20:26:18,885 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:26:18,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:26:18,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 457 transitions. [2020-07-10 20:26:18,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:26:18,911 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 457 transitions. [2020-07-10 20:26:18,911 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 457 transitions. [2020-07-10 20:26:19,567 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 457 edges. 457 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:19,585 INFO L225 Difference]: With dead ends: 663 [2020-07-10 20:26:19,586 INFO L226 Difference]: Without dead ends: 402 [2020-07-10 20:26:19,588 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=56, Invalid=126, Unknown=0, NotChecked=0, Total=182 [2020-07-10 20:26:19,589 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 402 states. [2020-07-10 20:26:21,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 402 to 299. [2020-07-10 20:26:21,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:26:21,292 INFO L82 GeneralOperation]: Start isEquivalent. First operand 402 states. Second operand 299 states. [2020-07-10 20:26:21,292 INFO L74 IsIncluded]: Start isIncluded. First operand 402 states. Second operand 299 states. [2020-07-10 20:26:21,292 INFO L87 Difference]: Start difference. First operand 402 states. Second operand 299 states. [2020-07-10 20:26:21,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:21,317 INFO L93 Difference]: Finished difference Result 402 states and 498 transitions. [2020-07-10 20:26:21,317 INFO L276 IsEmpty]: Start isEmpty. Operand 402 states and 498 transitions. [2020-07-10 20:26:21,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:26:21,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:26:21,320 INFO L74 IsIncluded]: Start isIncluded. First operand 299 states. Second operand 402 states. [2020-07-10 20:26:21,320 INFO L87 Difference]: Start difference. First operand 299 states. Second operand 402 states. [2020-07-10 20:26:21,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:21,347 INFO L93 Difference]: Finished difference Result 402 states and 498 transitions. [2020-07-10 20:26:21,348 INFO L276 IsEmpty]: Start isEmpty. Operand 402 states and 498 transitions. [2020-07-10 20:26:21,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:26:21,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:26:21,351 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:26:21,351 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:26:21,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 299 states. [2020-07-10 20:26:21,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 299 states to 299 states and 358 transitions. [2020-07-10 20:26:21,365 INFO L78 Accepts]: Start accepts. Automaton has 299 states and 358 transitions. Word has length 110 [2020-07-10 20:26:21,365 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:26:21,366 INFO L479 AbstractCegarLoop]: Abstraction has 299 states and 358 transitions. [2020-07-10 20:26:21,366 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-10 20:26:21,366 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 299 states and 358 transitions. [2020-07-10 20:26:22,032 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 358 edges. 358 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:22,032 INFO L276 IsEmpty]: Start isEmpty. Operand 299 states and 358 transitions. [2020-07-10 20:26:22,035 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2020-07-10 20:26:22,036 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:26:22,036 INFO L422 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:26:22,037 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-10 20:26:22,037 INFO L427 AbstractCegarLoop]: === Iteration 3 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:26:22,037 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:26:22,037 INFO L82 PathProgramCache]: Analyzing trace with hash 1991457360, now seen corresponding path program 1 times [2020-07-10 20:26:22,037 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:26:22,038 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1671810487] [2020-07-10 20:26:22,038 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:26:22,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,213 INFO L280 TraceCheckUtils]: 0: Hoare triple {5782#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,213 INFO L280 TraceCheckUtils]: 1: Hoare triple {5706#true} ~q_free~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,214 INFO L280 TraceCheckUtils]: 2: Hoare triple {5706#true} ~q_read_ev~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,214 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} ~q_write_ev~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,214 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} ~p_num_write~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,214 INFO L280 TraceCheckUtils]: 5: Hoare triple {5706#true} ~p_last_write~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,215 INFO L280 TraceCheckUtils]: 6: Hoare triple {5706#true} ~p_dw_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,215 INFO L280 TraceCheckUtils]: 7: Hoare triple {5706#true} ~p_dw_pc~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,215 INFO L280 TraceCheckUtils]: 8: Hoare triple {5706#true} ~p_dw_i~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,215 INFO L280 TraceCheckUtils]: 9: Hoare triple {5706#true} ~c_num_read~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,216 INFO L280 TraceCheckUtils]: 10: Hoare triple {5706#true} ~c_last_read~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,216 INFO L280 TraceCheckUtils]: 11: Hoare triple {5706#true} ~c_dr_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,216 INFO L280 TraceCheckUtils]: 12: Hoare triple {5706#true} ~c_dr_pc~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,216 INFO L280 TraceCheckUtils]: 13: Hoare triple {5706#true} ~c_dr_i~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,216 INFO L280 TraceCheckUtils]: 14: Hoare triple {5706#true} ~a_t~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,217 INFO L280 TraceCheckUtils]: 15: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,217 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {5706#true} {5706#true} #361#return; {5706#true} is VALID [2020-07-10 20:26:22,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,266 INFO L280 TraceCheckUtils]: 0: Hoare triple {5783#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,266 INFO L280 TraceCheckUtils]: 1: Hoare triple {5784#(= 1 ~q_free~0)} ~q_write_ev~0 := 2; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,267 INFO L280 TraceCheckUtils]: 2: Hoare triple {5784#(= 1 ~q_free~0)} ~q_read_ev~0 := ~q_write_ev~0; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,268 INFO L280 TraceCheckUtils]: 3: Hoare triple {5784#(= 1 ~q_free~0)} ~p_num_write~0 := 0; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,268 INFO L280 TraceCheckUtils]: 4: Hoare triple {5784#(= 1 ~q_free~0)} ~p_dw_pc~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,269 INFO L280 TraceCheckUtils]: 5: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~p_dw_i~0 := 1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,269 INFO L280 TraceCheckUtils]: 6: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~c_num_read~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,270 INFO L280 TraceCheckUtils]: 7: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~c_dr_pc~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,271 INFO L280 TraceCheckUtils]: 8: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~c_dr_i~0 := 1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,271 INFO L280 TraceCheckUtils]: 9: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume true; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,272 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} {5706#true} #337#return; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,290 INFO L280 TraceCheckUtils]: 0: Hoare triple {5785#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {5706#true} is VALID [2020-07-10 20:26:22,290 INFO L280 TraceCheckUtils]: 1: Hoare triple {5706#true} ~p_dw_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,291 INFO L280 TraceCheckUtils]: 2: Hoare triple {5706#true} assume 1 == ~c_dr_i~0; {5706#true} is VALID [2020-07-10 20:26:22,291 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} ~c_dr_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,291 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,292 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5706#true} {5736#(not (= ~p_dw_pc~0 ~q_free~0))} #355#return; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,297 INFO L280 TraceCheckUtils]: 0: Hoare triple {5706#true} havoc ~__retres1~2; {5706#true} is VALID [2020-07-10 20:26:22,297 INFO L280 TraceCheckUtils]: 1: Hoare triple {5706#true} assume 0 == ~p_dw_st~0; {5706#true} is VALID [2020-07-10 20:26:22,298 INFO L280 TraceCheckUtils]: 2: Hoare triple {5706#true} ~__retres1~2 := 1; {5706#true} is VALID [2020-07-10 20:26:22,298 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} #res := ~__retres1~2; {5706#true} is VALID [2020-07-10 20:26:22,298 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,299 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5706#true} {5736#(not (= ~p_dw_pc~0 ~q_free~0))} #347#return; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,389 INFO L280 TraceCheckUtils]: 0: Hoare triple {5786#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} is VALID [2020-07-10 20:26:22,390 INFO L280 TraceCheckUtils]: 1: Hoare triple {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} assume !false; {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} is VALID [2020-07-10 20:26:22,391 INFO L280 TraceCheckUtils]: 2: Hoare triple {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} assume 0 == ~q_free~0; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,391 INFO L280 TraceCheckUtils]: 3: Hoare triple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} ~p_dw_st~0 := 2; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,392 INFO L280 TraceCheckUtils]: 4: Hoare triple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} ~p_dw_pc~0 := 1; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,393 INFO L280 TraceCheckUtils]: 5: Hoare triple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} assume true; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,393 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} {5736#(not (= ~p_dw_pc~0 ~q_free~0))} #349#return; {5707#false} is VALID [2020-07-10 20:26:22,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,420 INFO L280 TraceCheckUtils]: 0: Hoare triple {5706#true} havoc ~__retres1~0; {5706#true} is VALID [2020-07-10 20:26:22,421 INFO L280 TraceCheckUtils]: 1: Hoare triple {5706#true} assume !(1 == ~p_dw_pc~0); {5706#true} is VALID [2020-07-10 20:26:22,421 INFO L280 TraceCheckUtils]: 2: Hoare triple {5706#true} ~__retres1~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,421 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} #res := ~__retres1~0; {5706#true} is VALID [2020-07-10 20:26:22,421 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,422 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5706#true} {5706#true} #343#return; {5706#true} is VALID [2020-07-10 20:26:22,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:22,429 INFO L280 TraceCheckUtils]: 0: Hoare triple {5706#true} havoc ~__retres1~1; {5706#true} is VALID [2020-07-10 20:26:22,429 INFO L280 TraceCheckUtils]: 1: Hoare triple {5706#true} assume !(1 == ~c_dr_pc~0); {5706#true} is VALID [2020-07-10 20:26:22,429 INFO L280 TraceCheckUtils]: 2: Hoare triple {5706#true} ~__retres1~1 := 0; {5706#true} is VALID [2020-07-10 20:26:22,430 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} #res := ~__retres1~1; {5706#true} is VALID [2020-07-10 20:26:22,430 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,430 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5706#true} {5706#true} #345#return; {5706#true} is VALID [2020-07-10 20:26:22,430 INFO L280 TraceCheckUtils]: 0: Hoare triple {5785#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {5706#true} is VALID [2020-07-10 20:26:22,431 INFO L280 TraceCheckUtils]: 1: Hoare triple {5706#true} havoc ~tmp___0~0; {5706#true} is VALID [2020-07-10 20:26:22,431 INFO L263 TraceCheckUtils]: 2: Hoare triple {5706#true} call #t~ret0 := is_do_write_p_triggered(); {5706#true} is VALID [2020-07-10 20:26:22,431 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} havoc ~__retres1~0; {5706#true} is VALID [2020-07-10 20:26:22,432 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} assume !(1 == ~p_dw_pc~0); {5706#true} is VALID [2020-07-10 20:26:22,432 INFO L280 TraceCheckUtils]: 5: Hoare triple {5706#true} ~__retres1~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,432 INFO L280 TraceCheckUtils]: 6: Hoare triple {5706#true} #res := ~__retres1~0; {5706#true} is VALID [2020-07-10 20:26:22,432 INFO L280 TraceCheckUtils]: 7: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,433 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {5706#true} {5706#true} #343#return; {5706#true} is VALID [2020-07-10 20:26:22,433 INFO L280 TraceCheckUtils]: 9: Hoare triple {5706#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {5706#true} is VALID [2020-07-10 20:26:22,434 INFO L280 TraceCheckUtils]: 10: Hoare triple {5706#true} ~tmp~0 := #t~ret0; {5706#true} is VALID [2020-07-10 20:26:22,434 INFO L280 TraceCheckUtils]: 11: Hoare triple {5706#true} havoc #t~ret0; {5706#true} is VALID [2020-07-10 20:26:22,434 INFO L280 TraceCheckUtils]: 12: Hoare triple {5706#true} assume !(0 != ~tmp~0); {5706#true} is VALID [2020-07-10 20:26:22,434 INFO L263 TraceCheckUtils]: 13: Hoare triple {5706#true} call #t~ret1 := is_do_read_c_triggered(); {5706#true} is VALID [2020-07-10 20:26:22,435 INFO L280 TraceCheckUtils]: 14: Hoare triple {5706#true} havoc ~__retres1~1; {5706#true} is VALID [2020-07-10 20:26:22,435 INFO L280 TraceCheckUtils]: 15: Hoare triple {5706#true} assume !(1 == ~c_dr_pc~0); {5706#true} is VALID [2020-07-10 20:26:22,435 INFO L280 TraceCheckUtils]: 16: Hoare triple {5706#true} ~__retres1~1 := 0; {5706#true} is VALID [2020-07-10 20:26:22,435 INFO L280 TraceCheckUtils]: 17: Hoare triple {5706#true} #res := ~__retres1~1; {5706#true} is VALID [2020-07-10 20:26:22,436 INFO L280 TraceCheckUtils]: 18: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,436 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {5706#true} {5706#true} #345#return; {5706#true} is VALID [2020-07-10 20:26:22,436 INFO L280 TraceCheckUtils]: 20: Hoare triple {5706#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {5706#true} is VALID [2020-07-10 20:26:22,436 INFO L280 TraceCheckUtils]: 21: Hoare triple {5706#true} ~tmp___0~0 := #t~ret1; {5706#true} is VALID [2020-07-10 20:26:22,437 INFO L280 TraceCheckUtils]: 22: Hoare triple {5706#true} havoc #t~ret1; {5706#true} is VALID [2020-07-10 20:26:22,437 INFO L280 TraceCheckUtils]: 23: Hoare triple {5706#true} assume !(0 != ~tmp___0~0); {5706#true} is VALID [2020-07-10 20:26:22,437 INFO L280 TraceCheckUtils]: 24: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,437 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {5706#true} {5707#false} #365#return; {5707#false} is VALID [2020-07-10 20:26:22,440 INFO L263 TraceCheckUtils]: 0: Hoare triple {5706#true} call ULTIMATE.init(); {5782#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:22,441 INFO L280 TraceCheckUtils]: 1: Hoare triple {5782#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,441 INFO L280 TraceCheckUtils]: 2: Hoare triple {5706#true} ~q_free~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,441 INFO L280 TraceCheckUtils]: 3: Hoare triple {5706#true} ~q_read_ev~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,441 INFO L280 TraceCheckUtils]: 4: Hoare triple {5706#true} ~q_write_ev~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,442 INFO L280 TraceCheckUtils]: 5: Hoare triple {5706#true} ~p_num_write~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,442 INFO L280 TraceCheckUtils]: 6: Hoare triple {5706#true} ~p_last_write~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,442 INFO L280 TraceCheckUtils]: 7: Hoare triple {5706#true} ~p_dw_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,442 INFO L280 TraceCheckUtils]: 8: Hoare triple {5706#true} ~p_dw_pc~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,443 INFO L280 TraceCheckUtils]: 9: Hoare triple {5706#true} ~p_dw_i~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,443 INFO L280 TraceCheckUtils]: 10: Hoare triple {5706#true} ~c_num_read~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,443 INFO L280 TraceCheckUtils]: 11: Hoare triple {5706#true} ~c_last_read~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,443 INFO L280 TraceCheckUtils]: 12: Hoare triple {5706#true} ~c_dr_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,443 INFO L280 TraceCheckUtils]: 13: Hoare triple {5706#true} ~c_dr_pc~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,444 INFO L280 TraceCheckUtils]: 14: Hoare triple {5706#true} ~c_dr_i~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,444 INFO L280 TraceCheckUtils]: 15: Hoare triple {5706#true} ~a_t~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,445 INFO L280 TraceCheckUtils]: 16: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,445 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {5706#true} {5706#true} #361#return; {5706#true} is VALID [2020-07-10 20:26:22,445 INFO L263 TraceCheckUtils]: 18: Hoare triple {5706#true} call #t~ret8 := main(); {5706#true} is VALID [2020-07-10 20:26:22,445 INFO L280 TraceCheckUtils]: 19: Hoare triple {5706#true} havoc ~__retres1~3; {5706#true} is VALID [2020-07-10 20:26:22,447 INFO L263 TraceCheckUtils]: 20: Hoare triple {5706#true} call init_model(); {5783#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:22,449 INFO L280 TraceCheckUtils]: 21: Hoare triple {5783#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,451 INFO L280 TraceCheckUtils]: 22: Hoare triple {5784#(= 1 ~q_free~0)} ~q_write_ev~0 := 2; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,452 INFO L280 TraceCheckUtils]: 23: Hoare triple {5784#(= 1 ~q_free~0)} ~q_read_ev~0 := ~q_write_ev~0; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,452 INFO L280 TraceCheckUtils]: 24: Hoare triple {5784#(= 1 ~q_free~0)} ~p_num_write~0 := 0; {5784#(= 1 ~q_free~0)} is VALID [2020-07-10 20:26:22,453 INFO L280 TraceCheckUtils]: 25: Hoare triple {5784#(= 1 ~q_free~0)} ~p_dw_pc~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,453 INFO L280 TraceCheckUtils]: 26: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~p_dw_i~0 := 1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,454 INFO L280 TraceCheckUtils]: 27: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~c_num_read~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,454 INFO L280 TraceCheckUtils]: 28: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~c_dr_pc~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,455 INFO L280 TraceCheckUtils]: 29: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~c_dr_i~0 := 1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,455 INFO L280 TraceCheckUtils]: 30: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume true; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,456 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} {5706#true} #337#return; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,456 INFO L263 TraceCheckUtils]: 32: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} call start_simulation(); {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,460 INFO L280 TraceCheckUtils]: 33: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc ~kernel_st~0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,461 INFO L280 TraceCheckUtils]: 34: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc ~tmp~3; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,461 INFO L280 TraceCheckUtils]: 35: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~kernel_st~0 := 0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,462 INFO L263 TraceCheckUtils]: 36: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} call init_threads(); {5785#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:22,462 INFO L280 TraceCheckUtils]: 37: Hoare triple {5785#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {5706#true} is VALID [2020-07-10 20:26:22,463 INFO L280 TraceCheckUtils]: 38: Hoare triple {5706#true} ~p_dw_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,463 INFO L280 TraceCheckUtils]: 39: Hoare triple {5706#true} assume 1 == ~c_dr_i~0; {5706#true} is VALID [2020-07-10 20:26:22,463 INFO L280 TraceCheckUtils]: 40: Hoare triple {5706#true} ~c_dr_st~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,463 INFO L280 TraceCheckUtils]: 41: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,464 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {5706#true} {5736#(not (= ~p_dw_pc~0 ~q_free~0))} #355#return; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,464 INFO L280 TraceCheckUtils]: 43: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume !false; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,465 INFO L280 TraceCheckUtils]: 44: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~kernel_st~0 := 1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,466 INFO L263 TraceCheckUtils]: 45: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} call eval(); {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,466 INFO L280 TraceCheckUtils]: 46: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc ~tmp~1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,467 INFO L280 TraceCheckUtils]: 47: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc ~tmp___0~1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,467 INFO L280 TraceCheckUtils]: 48: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc ~tmp___1~0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,469 INFO L280 TraceCheckUtils]: 49: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume !false; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,469 INFO L263 TraceCheckUtils]: 50: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} call #t~ret3 := exists_runnable_thread(); {5706#true} is VALID [2020-07-10 20:26:22,472 INFO L280 TraceCheckUtils]: 51: Hoare triple {5706#true} havoc ~__retres1~2; {5706#true} is VALID [2020-07-10 20:26:22,473 INFO L280 TraceCheckUtils]: 52: Hoare triple {5706#true} assume 0 == ~p_dw_st~0; {5706#true} is VALID [2020-07-10 20:26:22,473 INFO L280 TraceCheckUtils]: 53: Hoare triple {5706#true} ~__retres1~2 := 1; {5706#true} is VALID [2020-07-10 20:26:22,473 INFO L280 TraceCheckUtils]: 54: Hoare triple {5706#true} #res := ~__retres1~2; {5706#true} is VALID [2020-07-10 20:26:22,473 INFO L280 TraceCheckUtils]: 55: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,476 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {5706#true} {5736#(not (= ~p_dw_pc~0 ~q_free~0))} #347#return; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,477 INFO L280 TraceCheckUtils]: 57: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,477 INFO L280 TraceCheckUtils]: 58: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~tmp___1~0 := #t~ret3; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,478 INFO L280 TraceCheckUtils]: 59: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc #t~ret3; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,478 INFO L280 TraceCheckUtils]: 60: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume 0 != ~tmp___1~0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,479 INFO L280 TraceCheckUtils]: 61: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume 0 == ~p_dw_st~0; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,479 INFO L280 TraceCheckUtils]: 62: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,480 INFO L280 TraceCheckUtils]: 63: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~tmp~1 := #t~nondet4; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,481 INFO L280 TraceCheckUtils]: 64: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} havoc #t~nondet4; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,481 INFO L280 TraceCheckUtils]: 65: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} assume 0 != ~tmp~1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,481 INFO L280 TraceCheckUtils]: 66: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} ~p_dw_st~0 := 1; {5736#(not (= ~p_dw_pc~0 ~q_free~0))} is VALID [2020-07-10 20:26:22,483 INFO L263 TraceCheckUtils]: 67: Hoare triple {5736#(not (= ~p_dw_pc~0 ~q_free~0))} call do_write_p(); {5786#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:22,483 INFO L280 TraceCheckUtils]: 68: Hoare triple {5786#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} is VALID [2020-07-10 20:26:22,484 INFO L280 TraceCheckUtils]: 69: Hoare triple {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} assume !false; {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} is VALID [2020-07-10 20:26:22,485 INFO L280 TraceCheckUtils]: 70: Hoare triple {5787#(and (= 0 |old(~p_dw_pc~0)|) (= |old(~q_free~0)| ~q_free~0))} assume 0 == ~q_free~0; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,485 INFO L280 TraceCheckUtils]: 71: Hoare triple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} ~p_dw_st~0 := 2; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,486 INFO L280 TraceCheckUtils]: 72: Hoare triple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} ~p_dw_pc~0 := 1; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,486 INFO L280 TraceCheckUtils]: 73: Hoare triple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} assume true; {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} is VALID [2020-07-10 20:26:22,487 INFO L275 TraceCheckUtils]: 74: Hoare quadruple {5788#(= |old(~p_dw_pc~0)| |old(~q_free~0)|)} {5736#(not (= ~p_dw_pc~0 ~q_free~0))} #349#return; {5707#false} is VALID [2020-07-10 20:26:22,487 INFO L280 TraceCheckUtils]: 75: Hoare triple {5707#false} assume 0 == ~c_dr_st~0; {5707#false} is VALID [2020-07-10 20:26:22,487 INFO L280 TraceCheckUtils]: 76: Hoare triple {5707#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5707#false} is VALID [2020-07-10 20:26:22,488 INFO L280 TraceCheckUtils]: 77: Hoare triple {5707#false} ~tmp___0~1 := #t~nondet5; {5707#false} is VALID [2020-07-10 20:26:22,488 INFO L280 TraceCheckUtils]: 78: Hoare triple {5707#false} havoc #t~nondet5; {5707#false} is VALID [2020-07-10 20:26:22,488 INFO L280 TraceCheckUtils]: 79: Hoare triple {5707#false} assume 0 != ~tmp___0~1; {5707#false} is VALID [2020-07-10 20:26:22,488 INFO L280 TraceCheckUtils]: 80: Hoare triple {5707#false} ~c_dr_st~0 := 1; {5707#false} is VALID [2020-07-10 20:26:22,489 INFO L263 TraceCheckUtils]: 81: Hoare triple {5707#false} call do_read_c(); {5707#false} is VALID [2020-07-10 20:26:22,489 INFO L280 TraceCheckUtils]: 82: Hoare triple {5707#false} havoc ~a~0; {5707#false} is VALID [2020-07-10 20:26:22,489 INFO L280 TraceCheckUtils]: 83: Hoare triple {5707#false} assume 0 == ~c_dr_pc~0; {5707#false} is VALID [2020-07-10 20:26:22,489 INFO L280 TraceCheckUtils]: 84: Hoare triple {5707#false} assume !false; {5707#false} is VALID [2020-07-10 20:26:22,489 INFO L280 TraceCheckUtils]: 85: Hoare triple {5707#false} assume !(1 == ~q_free~0); {5707#false} is VALID [2020-07-10 20:26:22,490 INFO L280 TraceCheckUtils]: 86: Hoare triple {5707#false} ~a~0 := ~q_buf_0~0; {5707#false} is VALID [2020-07-10 20:26:22,490 INFO L280 TraceCheckUtils]: 87: Hoare triple {5707#false} ~c_last_read~0 := ~a~0; {5707#false} is VALID [2020-07-10 20:26:22,490 INFO L280 TraceCheckUtils]: 88: Hoare triple {5707#false} ~c_num_read~0 := 1 + ~c_num_read~0; {5707#false} is VALID [2020-07-10 20:26:22,490 INFO L280 TraceCheckUtils]: 89: Hoare triple {5707#false} ~q_free~0 := 1; {5707#false} is VALID [2020-07-10 20:26:22,491 INFO L280 TraceCheckUtils]: 90: Hoare triple {5707#false} ~q_read_ev~0 := 1; {5707#false} is VALID [2020-07-10 20:26:22,491 INFO L263 TraceCheckUtils]: 91: Hoare triple {5707#false} call immediate_notify_threads(); {5785#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:22,491 INFO L280 TraceCheckUtils]: 92: Hoare triple {5785#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {5706#true} is VALID [2020-07-10 20:26:22,491 INFO L280 TraceCheckUtils]: 93: Hoare triple {5706#true} havoc ~tmp___0~0; {5706#true} is VALID [2020-07-10 20:26:22,491 INFO L263 TraceCheckUtils]: 94: Hoare triple {5706#true} call #t~ret0 := is_do_write_p_triggered(); {5706#true} is VALID [2020-07-10 20:26:22,492 INFO L280 TraceCheckUtils]: 95: Hoare triple {5706#true} havoc ~__retres1~0; {5706#true} is VALID [2020-07-10 20:26:22,492 INFO L280 TraceCheckUtils]: 96: Hoare triple {5706#true} assume !(1 == ~p_dw_pc~0); {5706#true} is VALID [2020-07-10 20:26:22,492 INFO L280 TraceCheckUtils]: 97: Hoare triple {5706#true} ~__retres1~0 := 0; {5706#true} is VALID [2020-07-10 20:26:22,492 INFO L280 TraceCheckUtils]: 98: Hoare triple {5706#true} #res := ~__retres1~0; {5706#true} is VALID [2020-07-10 20:26:22,493 INFO L280 TraceCheckUtils]: 99: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,493 INFO L275 TraceCheckUtils]: 100: Hoare quadruple {5706#true} {5706#true} #343#return; {5706#true} is VALID [2020-07-10 20:26:22,493 INFO L280 TraceCheckUtils]: 101: Hoare triple {5706#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {5706#true} is VALID [2020-07-10 20:26:22,493 INFO L280 TraceCheckUtils]: 102: Hoare triple {5706#true} ~tmp~0 := #t~ret0; {5706#true} is VALID [2020-07-10 20:26:22,493 INFO L280 TraceCheckUtils]: 103: Hoare triple {5706#true} havoc #t~ret0; {5706#true} is VALID [2020-07-10 20:26:22,494 INFO L280 TraceCheckUtils]: 104: Hoare triple {5706#true} assume !(0 != ~tmp~0); {5706#true} is VALID [2020-07-10 20:26:22,494 INFO L263 TraceCheckUtils]: 105: Hoare triple {5706#true} call #t~ret1 := is_do_read_c_triggered(); {5706#true} is VALID [2020-07-10 20:26:22,494 INFO L280 TraceCheckUtils]: 106: Hoare triple {5706#true} havoc ~__retres1~1; {5706#true} is VALID [2020-07-10 20:26:22,494 INFO L280 TraceCheckUtils]: 107: Hoare triple {5706#true} assume !(1 == ~c_dr_pc~0); {5706#true} is VALID [2020-07-10 20:26:22,495 INFO L280 TraceCheckUtils]: 108: Hoare triple {5706#true} ~__retres1~1 := 0; {5706#true} is VALID [2020-07-10 20:26:22,495 INFO L280 TraceCheckUtils]: 109: Hoare triple {5706#true} #res := ~__retres1~1; {5706#true} is VALID [2020-07-10 20:26:22,495 INFO L280 TraceCheckUtils]: 110: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,495 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {5706#true} {5706#true} #345#return; {5706#true} is VALID [2020-07-10 20:26:22,496 INFO L280 TraceCheckUtils]: 112: Hoare triple {5706#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {5706#true} is VALID [2020-07-10 20:26:22,496 INFO L280 TraceCheckUtils]: 113: Hoare triple {5706#true} ~tmp___0~0 := #t~ret1; {5706#true} is VALID [2020-07-10 20:26:22,496 INFO L280 TraceCheckUtils]: 114: Hoare triple {5706#true} havoc #t~ret1; {5706#true} is VALID [2020-07-10 20:26:22,496 INFO L280 TraceCheckUtils]: 115: Hoare triple {5706#true} assume !(0 != ~tmp___0~0); {5706#true} is VALID [2020-07-10 20:26:22,496 INFO L280 TraceCheckUtils]: 116: Hoare triple {5706#true} assume true; {5706#true} is VALID [2020-07-10 20:26:22,497 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {5706#true} {5707#false} #365#return; {5707#false} is VALID [2020-07-10 20:26:22,497 INFO L280 TraceCheckUtils]: 118: Hoare triple {5707#false} ~q_read_ev~0 := 2; {5707#false} is VALID [2020-07-10 20:26:22,497 INFO L280 TraceCheckUtils]: 119: Hoare triple {5707#false} assume !(~p_last_write~0 == ~c_last_read~0); {5707#false} is VALID [2020-07-10 20:26:22,498 INFO L263 TraceCheckUtils]: 120: Hoare triple {5707#false} call error(); {5707#false} is VALID [2020-07-10 20:26:22,498 INFO L280 TraceCheckUtils]: 121: Hoare triple {5707#false} assume !false; {5707#false} is VALID [2020-07-10 20:26:22,516 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:26:22,516 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:26:22,516 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1671810487] [2020-07-10 20:26:22,517 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:26:22,517 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-10 20:26:22,517 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1101548187] [2020-07-10 20:26:22,519 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 122 [2020-07-10 20:26:22,519 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:26:22,519 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-10 20:26:22,637 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:22,637 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-10 20:26:22,638 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:26:22,638 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-10 20:26:22,638 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2020-07-10 20:26:22,638 INFO L87 Difference]: Start difference. First operand 299 states and 358 transitions. Second operand 10 states. [2020-07-10 20:26:43,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:43,373 INFO L93 Difference]: Finished difference Result 1647 states and 2291 transitions. [2020-07-10 20:26:43,373 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 48 states. [2020-07-10 20:26:43,373 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 122 [2020-07-10 20:26:43,374 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:26:43,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-10 20:26:43,408 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 1241 transitions. [2020-07-10 20:26:43,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-10 20:26:43,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 1241 transitions. [2020-07-10 20:26:43,427 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 48 states and 1241 transitions. [2020-07-10 20:26:45,227 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 1241 edges. 1241 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:45,361 INFO L225 Difference]: With dead ends: 1647 [2020-07-10 20:26:45,361 INFO L226 Difference]: Without dead ends: 1392 [2020-07-10 20:26:45,365 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 47 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 736 ImplicationChecksByTransitivity, 1.8s TimeCoverageRelationStatistics Valid=431, Invalid=1921, Unknown=0, NotChecked=0, Total=2352 [2020-07-10 20:26:45,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1392 states. [2020-07-10 20:26:52,599 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1392 to 1109. [2020-07-10 20:26:52,600 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:26:52,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1392 states. Second operand 1109 states. [2020-07-10 20:26:52,600 INFO L74 IsIncluded]: Start isIncluded. First operand 1392 states. Second operand 1109 states. [2020-07-10 20:26:52,600 INFO L87 Difference]: Start difference. First operand 1392 states. Second operand 1109 states. [2020-07-10 20:26:52,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:52,732 INFO L93 Difference]: Finished difference Result 1392 states and 1881 transitions. [2020-07-10 20:26:52,732 INFO L276 IsEmpty]: Start isEmpty. Operand 1392 states and 1881 transitions. [2020-07-10 20:26:52,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:26:52,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:26:52,745 INFO L74 IsIncluded]: Start isIncluded. First operand 1109 states. Second operand 1392 states. [2020-07-10 20:26:52,745 INFO L87 Difference]: Start difference. First operand 1109 states. Second operand 1392 states. [2020-07-10 20:26:52,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:26:52,880 INFO L93 Difference]: Finished difference Result 1392 states and 1881 transitions. [2020-07-10 20:26:52,880 INFO L276 IsEmpty]: Start isEmpty. Operand 1392 states and 1881 transitions. [2020-07-10 20:26:52,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:26:52,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:26:52,903 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:26:52,903 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:26:52,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 1109 states. [2020-07-10 20:26:52,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1109 states to 1109 states and 1511 transitions. [2020-07-10 20:26:53,000 INFO L78 Accepts]: Start accepts. Automaton has 1109 states and 1511 transitions. Word has length 122 [2020-07-10 20:26:53,000 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:26:53,000 INFO L479 AbstractCegarLoop]: Abstraction has 1109 states and 1511 transitions. [2020-07-10 20:26:53,000 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-10 20:26:53,001 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 1109 states and 1511 transitions. [2020-07-10 20:26:56,151 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 1511 edges. 1511 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:56,152 INFO L276 IsEmpty]: Start isEmpty. Operand 1109 states and 1511 transitions. [2020-07-10 20:26:56,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2020-07-10 20:26:56,154 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:26:56,155 INFO L422 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:26:56,155 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-10 20:26:56,155 INFO L427 AbstractCegarLoop]: === Iteration 4 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:26:56,156 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:26:56,156 INFO L82 PathProgramCache]: Analyzing trace with hash 892872046, now seen corresponding path program 1 times [2020-07-10 20:26:56,156 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:26:56,156 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1055301988] [2020-07-10 20:26:56,156 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:26:56,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,296 INFO L280 TraceCheckUtils]: 0: Hoare triple {14253#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,297 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} ~q_free~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,297 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} ~q_read_ev~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,297 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} ~q_write_ev~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,297 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} ~p_num_write~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,298 INFO L280 TraceCheckUtils]: 5: Hoare triple {14184#true} ~p_last_write~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,298 INFO L280 TraceCheckUtils]: 6: Hoare triple {14184#true} ~p_dw_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,298 INFO L280 TraceCheckUtils]: 7: Hoare triple {14184#true} ~p_dw_pc~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,298 INFO L280 TraceCheckUtils]: 8: Hoare triple {14184#true} ~p_dw_i~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,298 INFO L280 TraceCheckUtils]: 9: Hoare triple {14184#true} ~c_num_read~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,299 INFO L280 TraceCheckUtils]: 10: Hoare triple {14184#true} ~c_last_read~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,299 INFO L280 TraceCheckUtils]: 11: Hoare triple {14184#true} ~c_dr_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,299 INFO L280 TraceCheckUtils]: 12: Hoare triple {14184#true} ~c_dr_pc~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,299 INFO L280 TraceCheckUtils]: 13: Hoare triple {14184#true} ~c_dr_i~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,300 INFO L280 TraceCheckUtils]: 14: Hoare triple {14184#true} ~a_t~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,300 INFO L280 TraceCheckUtils]: 15: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,300 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {14184#true} {14184#true} #361#return; {14184#true} is VALID [2020-07-10 20:26:56,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,345 INFO L280 TraceCheckUtils]: 0: Hoare triple {14254#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {14184#true} is VALID [2020-07-10 20:26:56,345 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} ~q_write_ev~0 := 2; {14184#true} is VALID [2020-07-10 20:26:56,345 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} ~q_read_ev~0 := ~q_write_ev~0; {14184#true} is VALID [2020-07-10 20:26:56,346 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} ~p_num_write~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,346 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} ~p_dw_pc~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,346 INFO L280 TraceCheckUtils]: 5: Hoare triple {14184#true} ~p_dw_i~0 := 1; {14184#true} is VALID [2020-07-10 20:26:56,346 INFO L280 TraceCheckUtils]: 6: Hoare triple {14184#true} ~c_num_read~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,347 INFO L280 TraceCheckUtils]: 7: Hoare triple {14184#true} ~c_dr_pc~0 := 0; {14255#(<= ~c_dr_pc~0 0)} is VALID [2020-07-10 20:26:56,347 INFO L280 TraceCheckUtils]: 8: Hoare triple {14255#(<= ~c_dr_pc~0 0)} ~c_dr_i~0 := 1; {14255#(<= ~c_dr_pc~0 0)} is VALID [2020-07-10 20:26:56,348 INFO L280 TraceCheckUtils]: 9: Hoare triple {14255#(<= ~c_dr_pc~0 0)} assume true; {14255#(<= ~c_dr_pc~0 0)} is VALID [2020-07-10 20:26:56,349 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {14255#(<= ~c_dr_pc~0 0)} {14184#true} #337#return; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,366 INFO L280 TraceCheckUtils]: 0: Hoare triple {14256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {14184#true} is VALID [2020-07-10 20:26:56,366 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} ~p_dw_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,366 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} assume 1 == ~c_dr_i~0; {14184#true} is VALID [2020-07-10 20:26:56,366 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} ~c_dr_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,367 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,367 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14184#true} {14214#(not (= ~c_dr_pc~0 1))} #355#return; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,372 INFO L280 TraceCheckUtils]: 0: Hoare triple {14184#true} havoc ~__retres1~2; {14184#true} is VALID [2020-07-10 20:26:56,372 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} assume 0 == ~p_dw_st~0; {14184#true} is VALID [2020-07-10 20:26:56,372 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} ~__retres1~2 := 1; {14184#true} is VALID [2020-07-10 20:26:56,372 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} #res := ~__retres1~2; {14184#true} is VALID [2020-07-10 20:26:56,373 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,373 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14184#true} {14214#(not (= ~c_dr_pc~0 1))} #347#return; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,383 INFO L280 TraceCheckUtils]: 0: Hoare triple {14184#true} havoc ~__retres1~0; {14184#true} is VALID [2020-07-10 20:26:56,383 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} assume !(1 == ~p_dw_pc~0); {14184#true} is VALID [2020-07-10 20:26:56,383 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} ~__retres1~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,383 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} #res := ~__retres1~0; {14184#true} is VALID [2020-07-10 20:26:56,384 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,384 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14184#true} {14184#true} #343#return; {14184#true} is VALID [2020-07-10 20:26:56,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:26:56,387 INFO L280 TraceCheckUtils]: 0: Hoare triple {14184#true} havoc ~__retres1~1; {14184#true} is VALID [2020-07-10 20:26:56,387 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} assume !(1 == ~c_dr_pc~0); {14184#true} is VALID [2020-07-10 20:26:56,388 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} ~__retres1~1 := 0; {14184#true} is VALID [2020-07-10 20:26:56,388 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} #res := ~__retres1~1; {14184#true} is VALID [2020-07-10 20:26:56,388 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,388 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14184#true} {14184#true} #345#return; {14184#true} is VALID [2020-07-10 20:26:56,388 INFO L280 TraceCheckUtils]: 0: Hoare triple {14256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {14184#true} is VALID [2020-07-10 20:26:56,389 INFO L280 TraceCheckUtils]: 1: Hoare triple {14184#true} havoc ~tmp___0~0; {14184#true} is VALID [2020-07-10 20:26:56,389 INFO L263 TraceCheckUtils]: 2: Hoare triple {14184#true} call #t~ret0 := is_do_write_p_triggered(); {14184#true} is VALID [2020-07-10 20:26:56,389 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} havoc ~__retres1~0; {14184#true} is VALID [2020-07-10 20:26:56,389 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} assume !(1 == ~p_dw_pc~0); {14184#true} is VALID [2020-07-10 20:26:56,390 INFO L280 TraceCheckUtils]: 5: Hoare triple {14184#true} ~__retres1~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,390 INFO L280 TraceCheckUtils]: 6: Hoare triple {14184#true} #res := ~__retres1~0; {14184#true} is VALID [2020-07-10 20:26:56,390 INFO L280 TraceCheckUtils]: 7: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,390 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {14184#true} {14184#true} #343#return; {14184#true} is VALID [2020-07-10 20:26:56,390 INFO L280 TraceCheckUtils]: 9: Hoare triple {14184#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {14184#true} is VALID [2020-07-10 20:26:56,391 INFO L280 TraceCheckUtils]: 10: Hoare triple {14184#true} ~tmp~0 := #t~ret0; {14184#true} is VALID [2020-07-10 20:26:56,391 INFO L280 TraceCheckUtils]: 11: Hoare triple {14184#true} havoc #t~ret0; {14184#true} is VALID [2020-07-10 20:26:56,391 INFO L280 TraceCheckUtils]: 12: Hoare triple {14184#true} assume !(0 != ~tmp~0); {14184#true} is VALID [2020-07-10 20:26:56,391 INFO L263 TraceCheckUtils]: 13: Hoare triple {14184#true} call #t~ret1 := is_do_read_c_triggered(); {14184#true} is VALID [2020-07-10 20:26:56,392 INFO L280 TraceCheckUtils]: 14: Hoare triple {14184#true} havoc ~__retres1~1; {14184#true} is VALID [2020-07-10 20:26:56,392 INFO L280 TraceCheckUtils]: 15: Hoare triple {14184#true} assume !(1 == ~c_dr_pc~0); {14184#true} is VALID [2020-07-10 20:26:56,392 INFO L280 TraceCheckUtils]: 16: Hoare triple {14184#true} ~__retres1~1 := 0; {14184#true} is VALID [2020-07-10 20:26:56,392 INFO L280 TraceCheckUtils]: 17: Hoare triple {14184#true} #res := ~__retres1~1; {14184#true} is VALID [2020-07-10 20:26:56,392 INFO L280 TraceCheckUtils]: 18: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,393 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {14184#true} {14184#true} #345#return; {14184#true} is VALID [2020-07-10 20:26:56,393 INFO L280 TraceCheckUtils]: 20: Hoare triple {14184#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {14184#true} is VALID [2020-07-10 20:26:56,393 INFO L280 TraceCheckUtils]: 21: Hoare triple {14184#true} ~tmp___0~0 := #t~ret1; {14184#true} is VALID [2020-07-10 20:26:56,393 INFO L280 TraceCheckUtils]: 22: Hoare triple {14184#true} havoc #t~ret1; {14184#true} is VALID [2020-07-10 20:26:56,393 INFO L280 TraceCheckUtils]: 23: Hoare triple {14184#true} assume !(0 != ~tmp___0~0); {14184#true} is VALID [2020-07-10 20:26:56,394 INFO L280 TraceCheckUtils]: 24: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,394 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {14184#true} {14185#false} #365#return; {14185#false} is VALID [2020-07-10 20:26:56,396 INFO L263 TraceCheckUtils]: 0: Hoare triple {14184#true} call ULTIMATE.init(); {14253#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:56,396 INFO L280 TraceCheckUtils]: 1: Hoare triple {14253#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,396 INFO L280 TraceCheckUtils]: 2: Hoare triple {14184#true} ~q_free~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,397 INFO L280 TraceCheckUtils]: 3: Hoare triple {14184#true} ~q_read_ev~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,397 INFO L280 TraceCheckUtils]: 4: Hoare triple {14184#true} ~q_write_ev~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,397 INFO L280 TraceCheckUtils]: 5: Hoare triple {14184#true} ~p_num_write~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,397 INFO L280 TraceCheckUtils]: 6: Hoare triple {14184#true} ~p_last_write~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,397 INFO L280 TraceCheckUtils]: 7: Hoare triple {14184#true} ~p_dw_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,398 INFO L280 TraceCheckUtils]: 8: Hoare triple {14184#true} ~p_dw_pc~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,398 INFO L280 TraceCheckUtils]: 9: Hoare triple {14184#true} ~p_dw_i~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,398 INFO L280 TraceCheckUtils]: 10: Hoare triple {14184#true} ~c_num_read~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,398 INFO L280 TraceCheckUtils]: 11: Hoare triple {14184#true} ~c_last_read~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,398 INFO L280 TraceCheckUtils]: 12: Hoare triple {14184#true} ~c_dr_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,399 INFO L280 TraceCheckUtils]: 13: Hoare triple {14184#true} ~c_dr_pc~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,399 INFO L280 TraceCheckUtils]: 14: Hoare triple {14184#true} ~c_dr_i~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,399 INFO L280 TraceCheckUtils]: 15: Hoare triple {14184#true} ~a_t~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,399 INFO L280 TraceCheckUtils]: 16: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,399 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {14184#true} {14184#true} #361#return; {14184#true} is VALID [2020-07-10 20:26:56,400 INFO L263 TraceCheckUtils]: 18: Hoare triple {14184#true} call #t~ret8 := main(); {14184#true} is VALID [2020-07-10 20:26:56,400 INFO L280 TraceCheckUtils]: 19: Hoare triple {14184#true} havoc ~__retres1~3; {14184#true} is VALID [2020-07-10 20:26:56,401 INFO L263 TraceCheckUtils]: 20: Hoare triple {14184#true} call init_model(); {14254#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:26:56,401 INFO L280 TraceCheckUtils]: 21: Hoare triple {14254#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {14184#true} is VALID [2020-07-10 20:26:56,401 INFO L280 TraceCheckUtils]: 22: Hoare triple {14184#true} ~q_write_ev~0 := 2; {14184#true} is VALID [2020-07-10 20:26:56,401 INFO L280 TraceCheckUtils]: 23: Hoare triple {14184#true} ~q_read_ev~0 := ~q_write_ev~0; {14184#true} is VALID [2020-07-10 20:26:56,402 INFO L280 TraceCheckUtils]: 24: Hoare triple {14184#true} ~p_num_write~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,402 INFO L280 TraceCheckUtils]: 25: Hoare triple {14184#true} ~p_dw_pc~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,402 INFO L280 TraceCheckUtils]: 26: Hoare triple {14184#true} ~p_dw_i~0 := 1; {14184#true} is VALID [2020-07-10 20:26:56,402 INFO L280 TraceCheckUtils]: 27: Hoare triple {14184#true} ~c_num_read~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,403 INFO L280 TraceCheckUtils]: 28: Hoare triple {14184#true} ~c_dr_pc~0 := 0; {14255#(<= ~c_dr_pc~0 0)} is VALID [2020-07-10 20:26:56,403 INFO L280 TraceCheckUtils]: 29: Hoare triple {14255#(<= ~c_dr_pc~0 0)} ~c_dr_i~0 := 1; {14255#(<= ~c_dr_pc~0 0)} is VALID [2020-07-10 20:26:56,404 INFO L280 TraceCheckUtils]: 30: Hoare triple {14255#(<= ~c_dr_pc~0 0)} assume true; {14255#(<= ~c_dr_pc~0 0)} is VALID [2020-07-10 20:26:56,405 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {14255#(<= ~c_dr_pc~0 0)} {14184#true} #337#return; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,405 INFO L263 TraceCheckUtils]: 32: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} call start_simulation(); {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,406 INFO L280 TraceCheckUtils]: 33: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc ~kernel_st~0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,406 INFO L280 TraceCheckUtils]: 34: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc ~tmp~3; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,407 INFO L280 TraceCheckUtils]: 35: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} ~kernel_st~0 := 0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,407 INFO L263 TraceCheckUtils]: 36: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} call init_threads(); {14256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:56,408 INFO L280 TraceCheckUtils]: 37: Hoare triple {14256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {14184#true} is VALID [2020-07-10 20:26:56,408 INFO L280 TraceCheckUtils]: 38: Hoare triple {14184#true} ~p_dw_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,408 INFO L280 TraceCheckUtils]: 39: Hoare triple {14184#true} assume 1 == ~c_dr_i~0; {14184#true} is VALID [2020-07-10 20:26:56,408 INFO L280 TraceCheckUtils]: 40: Hoare triple {14184#true} ~c_dr_st~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,408 INFO L280 TraceCheckUtils]: 41: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,409 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {14184#true} {14214#(not (= ~c_dr_pc~0 1))} #355#return; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,409 INFO L280 TraceCheckUtils]: 43: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume !false; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,410 INFO L280 TraceCheckUtils]: 44: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} ~kernel_st~0 := 1; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,411 INFO L263 TraceCheckUtils]: 45: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} call eval(); {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,411 INFO L280 TraceCheckUtils]: 46: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc ~tmp~1; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,412 INFO L280 TraceCheckUtils]: 47: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc ~tmp___0~1; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,412 INFO L280 TraceCheckUtils]: 48: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc ~tmp___1~0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,413 INFO L280 TraceCheckUtils]: 49: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume !false; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,413 INFO L263 TraceCheckUtils]: 50: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} call #t~ret3 := exists_runnable_thread(); {14184#true} is VALID [2020-07-10 20:26:56,413 INFO L280 TraceCheckUtils]: 51: Hoare triple {14184#true} havoc ~__retres1~2; {14184#true} is VALID [2020-07-10 20:26:56,413 INFO L280 TraceCheckUtils]: 52: Hoare triple {14184#true} assume 0 == ~p_dw_st~0; {14184#true} is VALID [2020-07-10 20:26:56,413 INFO L280 TraceCheckUtils]: 53: Hoare triple {14184#true} ~__retres1~2 := 1; {14184#true} is VALID [2020-07-10 20:26:56,414 INFO L280 TraceCheckUtils]: 54: Hoare triple {14184#true} #res := ~__retres1~2; {14184#true} is VALID [2020-07-10 20:26:56,414 INFO L280 TraceCheckUtils]: 55: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,414 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {14184#true} {14214#(not (= ~c_dr_pc~0 1))} #347#return; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,415 INFO L280 TraceCheckUtils]: 57: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,415 INFO L280 TraceCheckUtils]: 58: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} ~tmp___1~0 := #t~ret3; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,416 INFO L280 TraceCheckUtils]: 59: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc #t~ret3; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,416 INFO L280 TraceCheckUtils]: 60: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume 0 != ~tmp___1~0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,417 INFO L280 TraceCheckUtils]: 61: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume 0 == ~p_dw_st~0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,417 INFO L280 TraceCheckUtils]: 62: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,418 INFO L280 TraceCheckUtils]: 63: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} ~tmp~1 := #t~nondet4; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,418 INFO L280 TraceCheckUtils]: 64: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc #t~nondet4; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,419 INFO L280 TraceCheckUtils]: 65: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume !(0 != ~tmp~1); {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,420 INFO L280 TraceCheckUtils]: 66: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume 0 == ~c_dr_st~0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,420 INFO L280 TraceCheckUtils]: 67: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,421 INFO L280 TraceCheckUtils]: 68: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} ~tmp___0~1 := #t~nondet5; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,421 INFO L280 TraceCheckUtils]: 69: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc #t~nondet5; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,422 INFO L280 TraceCheckUtils]: 70: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume 0 != ~tmp___0~1; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,422 INFO L280 TraceCheckUtils]: 71: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} ~c_dr_st~0 := 1; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,423 INFO L263 TraceCheckUtils]: 72: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} call do_read_c(); {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,423 INFO L280 TraceCheckUtils]: 73: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} havoc ~a~0; {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,424 INFO L280 TraceCheckUtils]: 74: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume !(0 == ~c_dr_pc~0); {14214#(not (= ~c_dr_pc~0 1))} is VALID [2020-07-10 20:26:56,424 INFO L280 TraceCheckUtils]: 75: Hoare triple {14214#(not (= ~c_dr_pc~0 1))} assume 1 == ~c_dr_pc~0; {14185#false} is VALID [2020-07-10 20:26:56,425 INFO L280 TraceCheckUtils]: 76: Hoare triple {14185#false} ~a~0 := ~a_t~0; {14185#false} is VALID [2020-07-10 20:26:56,425 INFO L280 TraceCheckUtils]: 77: Hoare triple {14185#false} ~a~0 := ~q_buf_0~0; {14185#false} is VALID [2020-07-10 20:26:56,425 INFO L280 TraceCheckUtils]: 78: Hoare triple {14185#false} ~c_last_read~0 := ~a~0; {14185#false} is VALID [2020-07-10 20:26:56,425 INFO L280 TraceCheckUtils]: 79: Hoare triple {14185#false} ~c_num_read~0 := 1 + ~c_num_read~0; {14185#false} is VALID [2020-07-10 20:26:56,425 INFO L280 TraceCheckUtils]: 80: Hoare triple {14185#false} ~q_free~0 := 1; {14185#false} is VALID [2020-07-10 20:26:56,426 INFO L280 TraceCheckUtils]: 81: Hoare triple {14185#false} ~q_read_ev~0 := 1; {14185#false} is VALID [2020-07-10 20:26:56,426 INFO L263 TraceCheckUtils]: 82: Hoare triple {14185#false} call immediate_notify_threads(); {14256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:26:56,426 INFO L280 TraceCheckUtils]: 83: Hoare triple {14256#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {14184#true} is VALID [2020-07-10 20:26:56,426 INFO L280 TraceCheckUtils]: 84: Hoare triple {14184#true} havoc ~tmp___0~0; {14184#true} is VALID [2020-07-10 20:26:56,426 INFO L263 TraceCheckUtils]: 85: Hoare triple {14184#true} call #t~ret0 := is_do_write_p_triggered(); {14184#true} is VALID [2020-07-10 20:26:56,427 INFO L280 TraceCheckUtils]: 86: Hoare triple {14184#true} havoc ~__retres1~0; {14184#true} is VALID [2020-07-10 20:26:56,427 INFO L280 TraceCheckUtils]: 87: Hoare triple {14184#true} assume !(1 == ~p_dw_pc~0); {14184#true} is VALID [2020-07-10 20:26:56,427 INFO L280 TraceCheckUtils]: 88: Hoare triple {14184#true} ~__retres1~0 := 0; {14184#true} is VALID [2020-07-10 20:26:56,427 INFO L280 TraceCheckUtils]: 89: Hoare triple {14184#true} #res := ~__retres1~0; {14184#true} is VALID [2020-07-10 20:26:56,427 INFO L280 TraceCheckUtils]: 90: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,428 INFO L275 TraceCheckUtils]: 91: Hoare quadruple {14184#true} {14184#true} #343#return; {14184#true} is VALID [2020-07-10 20:26:56,428 INFO L280 TraceCheckUtils]: 92: Hoare triple {14184#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {14184#true} is VALID [2020-07-10 20:26:56,428 INFO L280 TraceCheckUtils]: 93: Hoare triple {14184#true} ~tmp~0 := #t~ret0; {14184#true} is VALID [2020-07-10 20:26:56,428 INFO L280 TraceCheckUtils]: 94: Hoare triple {14184#true} havoc #t~ret0; {14184#true} is VALID [2020-07-10 20:26:56,428 INFO L280 TraceCheckUtils]: 95: Hoare triple {14184#true} assume !(0 != ~tmp~0); {14184#true} is VALID [2020-07-10 20:26:56,429 INFO L263 TraceCheckUtils]: 96: Hoare triple {14184#true} call #t~ret1 := is_do_read_c_triggered(); {14184#true} is VALID [2020-07-10 20:26:56,429 INFO L280 TraceCheckUtils]: 97: Hoare triple {14184#true} havoc ~__retres1~1; {14184#true} is VALID [2020-07-10 20:26:56,429 INFO L280 TraceCheckUtils]: 98: Hoare triple {14184#true} assume !(1 == ~c_dr_pc~0); {14184#true} is VALID [2020-07-10 20:26:56,429 INFO L280 TraceCheckUtils]: 99: Hoare triple {14184#true} ~__retres1~1 := 0; {14184#true} is VALID [2020-07-10 20:26:56,429 INFO L280 TraceCheckUtils]: 100: Hoare triple {14184#true} #res := ~__retres1~1; {14184#true} is VALID [2020-07-10 20:26:56,430 INFO L280 TraceCheckUtils]: 101: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,430 INFO L275 TraceCheckUtils]: 102: Hoare quadruple {14184#true} {14184#true} #345#return; {14184#true} is VALID [2020-07-10 20:26:56,430 INFO L280 TraceCheckUtils]: 103: Hoare triple {14184#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {14184#true} is VALID [2020-07-10 20:26:56,430 INFO L280 TraceCheckUtils]: 104: Hoare triple {14184#true} ~tmp___0~0 := #t~ret1; {14184#true} is VALID [2020-07-10 20:26:56,431 INFO L280 TraceCheckUtils]: 105: Hoare triple {14184#true} havoc #t~ret1; {14184#true} is VALID [2020-07-10 20:26:56,431 INFO L280 TraceCheckUtils]: 106: Hoare triple {14184#true} assume !(0 != ~tmp___0~0); {14184#true} is VALID [2020-07-10 20:26:56,431 INFO L280 TraceCheckUtils]: 107: Hoare triple {14184#true} assume true; {14184#true} is VALID [2020-07-10 20:26:56,431 INFO L275 TraceCheckUtils]: 108: Hoare quadruple {14184#true} {14185#false} #365#return; {14185#false} is VALID [2020-07-10 20:26:56,431 INFO L280 TraceCheckUtils]: 109: Hoare triple {14185#false} ~q_read_ev~0 := 2; {14185#false} is VALID [2020-07-10 20:26:56,432 INFO L280 TraceCheckUtils]: 110: Hoare triple {14185#false} assume !(~p_last_write~0 == ~c_last_read~0); {14185#false} is VALID [2020-07-10 20:26:56,432 INFO L263 TraceCheckUtils]: 111: Hoare triple {14185#false} call error(); {14185#false} is VALID [2020-07-10 20:26:56,432 INFO L280 TraceCheckUtils]: 112: Hoare triple {14185#false} assume !false; {14185#false} is VALID [2020-07-10 20:26:56,443 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:26:56,444 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:26:56,444 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1055301988] [2020-07-10 20:26:56,444 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:26:56,444 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2020-07-10 20:26:56,444 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1682115571] [2020-07-10 20:26:56,445 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 113 [2020-07-10 20:26:56,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:26:56,446 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-10 20:26:56,548 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:26:56,549 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-10 20:26:56,549 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:26:56,549 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-10 20:26:56,549 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2020-07-10 20:26:56,550 INFO L87 Difference]: Start difference. First operand 1109 states and 1511 transitions. Second operand 7 states. [2020-07-10 20:27:20,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:27:20,408 INFO L93 Difference]: Finished difference Result 3817 states and 5757 transitions. [2020-07-10 20:27:20,408 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-10 20:27:20,408 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 113 [2020-07-10 20:27:20,409 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:27:20,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:27:20,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 921 transitions. [2020-07-10 20:27:20,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:27:20,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 921 transitions. [2020-07-10 20:27:20,429 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 921 transitions. [2020-07-10 20:27:21,740 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 921 edges. 921 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:27:22,098 INFO L225 Difference]: With dead ends: 3817 [2020-07-10 20:27:22,098 INFO L226 Difference]: Without dead ends: 2752 [2020-07-10 20:27:22,112 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=84, Invalid=156, Unknown=0, NotChecked=0, Total=240 [2020-07-10 20:27:22,115 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2752 states. [2020-07-10 20:27:38,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2752 to 2294. [2020-07-10 20:27:38,600 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:27:38,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2752 states. Second operand 2294 states. [2020-07-10 20:27:38,601 INFO L74 IsIncluded]: Start isIncluded. First operand 2752 states. Second operand 2294 states. [2020-07-10 20:27:38,601 INFO L87 Difference]: Start difference. First operand 2752 states. Second operand 2294 states. [2020-07-10 20:27:39,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:27:39,056 INFO L93 Difference]: Finished difference Result 2752 states and 3893 transitions. [2020-07-10 20:27:39,057 INFO L276 IsEmpty]: Start isEmpty. Operand 2752 states and 3893 transitions. [2020-07-10 20:27:39,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:27:39,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:27:39,088 INFO L74 IsIncluded]: Start isIncluded. First operand 2294 states. Second operand 2752 states. [2020-07-10 20:27:39,088 INFO L87 Difference]: Start difference. First operand 2294 states. Second operand 2752 states. [2020-07-10 20:27:39,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:27:39,574 INFO L93 Difference]: Finished difference Result 2752 states and 3893 transitions. [2020-07-10 20:27:39,574 INFO L276 IsEmpty]: Start isEmpty. Operand 2752 states and 3893 transitions. [2020-07-10 20:27:39,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:27:39,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:27:39,606 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:27:39,607 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:27:39,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2294 states. [2020-07-10 20:27:39,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2294 states to 2294 states and 3263 transitions. [2020-07-10 20:27:39,975 INFO L78 Accepts]: Start accepts. Automaton has 2294 states and 3263 transitions. Word has length 113 [2020-07-10 20:27:39,976 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:27:39,976 INFO L479 AbstractCegarLoop]: Abstraction has 2294 states and 3263 transitions. [2020-07-10 20:27:39,976 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-10 20:27:39,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2294 states and 3263 transitions. [2020-07-10 20:27:46,946 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3263 edges. 3263 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:27:46,947 INFO L276 IsEmpty]: Start isEmpty. Operand 2294 states and 3263 transitions. [2020-07-10 20:27:46,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 147 [2020-07-10 20:27:46,951 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:27:46,951 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:27:46,952 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-10 20:27:46,952 INFO L427 AbstractCegarLoop]: === Iteration 5 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:27:46,952 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:27:46,952 INFO L82 PathProgramCache]: Analyzing trace with hash -1124522967, now seen corresponding path program 1 times [2020-07-10 20:27:46,952 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:27:46,953 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [77740483] [2020-07-10 20:27:46,953 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:27:47,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,139 INFO L280 TraceCheckUtils]: 0: Hoare triple {32105#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,139 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} ~q_free~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,139 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~q_read_ev~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,139 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} ~q_write_ev~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,140 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} ~p_num_write~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,140 INFO L280 TraceCheckUtils]: 5: Hoare triple {32021#true} ~p_last_write~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,140 INFO L280 TraceCheckUtils]: 6: Hoare triple {32021#true} ~p_dw_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,140 INFO L280 TraceCheckUtils]: 7: Hoare triple {32021#true} ~p_dw_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,140 INFO L280 TraceCheckUtils]: 8: Hoare triple {32021#true} ~p_dw_i~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,141 INFO L280 TraceCheckUtils]: 9: Hoare triple {32021#true} ~c_num_read~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,141 INFO L280 TraceCheckUtils]: 10: Hoare triple {32021#true} ~c_last_read~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,141 INFO L280 TraceCheckUtils]: 11: Hoare triple {32021#true} ~c_dr_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,141 INFO L280 TraceCheckUtils]: 12: Hoare triple {32021#true} ~c_dr_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,141 INFO L280 TraceCheckUtils]: 13: Hoare triple {32021#true} ~c_dr_i~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,142 INFO L280 TraceCheckUtils]: 14: Hoare triple {32021#true} ~a_t~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,142 INFO L280 TraceCheckUtils]: 15: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,142 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {32021#true} {32021#true} #361#return; {32021#true} is VALID [2020-07-10 20:27:47,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,174 INFO L280 TraceCheckUtils]: 0: Hoare triple {32106#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,175 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} ~q_write_ev~0 := 2; {32021#true} is VALID [2020-07-10 20:27:47,175 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~q_read_ev~0 := ~q_write_ev~0; {32021#true} is VALID [2020-07-10 20:27:47,175 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} ~p_num_write~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,175 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} ~p_dw_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,176 INFO L280 TraceCheckUtils]: 5: Hoare triple {32021#true} ~p_dw_i~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,176 INFO L280 TraceCheckUtils]: 6: Hoare triple {32021#true} ~c_num_read~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,176 INFO L280 TraceCheckUtils]: 7: Hoare triple {32021#true} ~c_dr_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,176 INFO L280 TraceCheckUtils]: 8: Hoare triple {32021#true} ~c_dr_i~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,176 INFO L280 TraceCheckUtils]: 9: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,177 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {32021#true} {32021#true} #337#return; {32021#true} is VALID [2020-07-10 20:27:47,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,192 INFO L280 TraceCheckUtils]: 0: Hoare triple {32107#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {32021#true} is VALID [2020-07-10 20:27:47,193 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} ~p_dw_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,193 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} assume 1 == ~c_dr_i~0; {32021#true} is VALID [2020-07-10 20:27:47,193 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} ~c_dr_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,193 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,194 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {32021#true} {32021#true} #355#return; {32021#true} is VALID [2020-07-10 20:27:47,194 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,198 INFO L280 TraceCheckUtils]: 0: Hoare triple {32021#true} havoc ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,198 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} assume 0 == ~p_dw_st~0; {32021#true} is VALID [2020-07-10 20:27:47,198 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~__retres1~2 := 1; {32021#true} is VALID [2020-07-10 20:27:47,199 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} #res := ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,199 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,199 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {32021#true} {32021#true} #347#return; {32021#true} is VALID [2020-07-10 20:27:47,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,239 INFO L280 TraceCheckUtils]: 0: Hoare triple {32108#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|))} havoc ~a~0; {32021#true} is VALID [2020-07-10 20:27:47,239 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} assume 0 == ~c_dr_pc~0; {32021#true} is VALID [2020-07-10 20:27:47,239 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} assume !false; {32021#true} is VALID [2020-07-10 20:27:47,239 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} assume 1 == ~q_free~0; {32021#true} is VALID [2020-07-10 20:27:47,240 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} ~c_dr_st~0 := 2; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,241 INFO L280 TraceCheckUtils]: 5: Hoare triple {32072#(<= 2 ~c_dr_st~0)} ~c_dr_pc~0 := 1; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,241 INFO L280 TraceCheckUtils]: 6: Hoare triple {32072#(<= 2 ~c_dr_st~0)} ~a_t~0 := ~a~0; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,242 INFO L280 TraceCheckUtils]: 7: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume true; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,242 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {32072#(<= 2 ~c_dr_st~0)} {32021#true} #351#return; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,253 INFO L280 TraceCheckUtils]: 0: Hoare triple {32021#true} havoc ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,253 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} assume 0 == ~p_dw_st~0; {32021#true} is VALID [2020-07-10 20:27:47,254 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~__retres1~2 := 1; {32021#true} is VALID [2020-07-10 20:27:47,254 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} #res := ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,254 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,255 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {32021#true} {32072#(<= 2 ~c_dr_st~0)} #347#return; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,266 INFO L280 TraceCheckUtils]: 0: Hoare triple {32021#true} havoc ~__retres1~0; {32021#true} is VALID [2020-07-10 20:27:47,266 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} assume !(1 == ~p_dw_pc~0); {32021#true} is VALID [2020-07-10 20:27:47,267 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~__retres1~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,267 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} #res := ~__retres1~0; {32021#true} is VALID [2020-07-10 20:27:47,267 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,267 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {32021#true} {32021#true} #343#return; {32021#true} is VALID [2020-07-10 20:27:47,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:27:47,277 INFO L280 TraceCheckUtils]: 0: Hoare triple {32021#true} havoc ~__retres1~1; {32021#true} is VALID [2020-07-10 20:27:47,277 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} assume !(1 == ~c_dr_pc~0); {32021#true} is VALID [2020-07-10 20:27:47,277 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~__retres1~1 := 0; {32021#true} is VALID [2020-07-10 20:27:47,277 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} #res := ~__retres1~1; {32021#true} is VALID [2020-07-10 20:27:47,278 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,278 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {32021#true} {32021#true} #345#return; {32021#true} is VALID [2020-07-10 20:27:47,278 INFO L280 TraceCheckUtils]: 0: Hoare triple {32107#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {32021#true} is VALID [2020-07-10 20:27:47,278 INFO L280 TraceCheckUtils]: 1: Hoare triple {32021#true} havoc ~tmp___0~0; {32021#true} is VALID [2020-07-10 20:27:47,279 INFO L263 TraceCheckUtils]: 2: Hoare triple {32021#true} call #t~ret0 := is_do_write_p_triggered(); {32021#true} is VALID [2020-07-10 20:27:47,279 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} havoc ~__retres1~0; {32021#true} is VALID [2020-07-10 20:27:47,279 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} assume !(1 == ~p_dw_pc~0); {32021#true} is VALID [2020-07-10 20:27:47,279 INFO L280 TraceCheckUtils]: 5: Hoare triple {32021#true} ~__retres1~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,280 INFO L280 TraceCheckUtils]: 6: Hoare triple {32021#true} #res := ~__retres1~0; {32021#true} is VALID [2020-07-10 20:27:47,280 INFO L280 TraceCheckUtils]: 7: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,280 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {32021#true} {32021#true} #343#return; {32021#true} is VALID [2020-07-10 20:27:47,280 INFO L280 TraceCheckUtils]: 9: Hoare triple {32021#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,280 INFO L280 TraceCheckUtils]: 10: Hoare triple {32021#true} ~tmp~0 := #t~ret0; {32021#true} is VALID [2020-07-10 20:27:47,281 INFO L280 TraceCheckUtils]: 11: Hoare triple {32021#true} havoc #t~ret0; {32021#true} is VALID [2020-07-10 20:27:47,281 INFO L280 TraceCheckUtils]: 12: Hoare triple {32021#true} assume !(0 != ~tmp~0); {32021#true} is VALID [2020-07-10 20:27:47,281 INFO L263 TraceCheckUtils]: 13: Hoare triple {32021#true} call #t~ret1 := is_do_read_c_triggered(); {32021#true} is VALID [2020-07-10 20:27:47,281 INFO L280 TraceCheckUtils]: 14: Hoare triple {32021#true} havoc ~__retres1~1; {32021#true} is VALID [2020-07-10 20:27:47,281 INFO L280 TraceCheckUtils]: 15: Hoare triple {32021#true} assume !(1 == ~c_dr_pc~0); {32021#true} is VALID [2020-07-10 20:27:47,282 INFO L280 TraceCheckUtils]: 16: Hoare triple {32021#true} ~__retres1~1 := 0; {32021#true} is VALID [2020-07-10 20:27:47,282 INFO L280 TraceCheckUtils]: 17: Hoare triple {32021#true} #res := ~__retres1~1; {32021#true} is VALID [2020-07-10 20:27:47,282 INFO L280 TraceCheckUtils]: 18: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,282 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {32021#true} {32021#true} #345#return; {32021#true} is VALID [2020-07-10 20:27:47,282 INFO L280 TraceCheckUtils]: 20: Hoare triple {32021#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,283 INFO L280 TraceCheckUtils]: 21: Hoare triple {32021#true} ~tmp___0~0 := #t~ret1; {32021#true} is VALID [2020-07-10 20:27:47,283 INFO L280 TraceCheckUtils]: 22: Hoare triple {32021#true} havoc #t~ret1; {32021#true} is VALID [2020-07-10 20:27:47,283 INFO L280 TraceCheckUtils]: 23: Hoare triple {32021#true} assume !(0 != ~tmp___0~0); {32021#true} is VALID [2020-07-10 20:27:47,283 INFO L280 TraceCheckUtils]: 24: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,283 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {32021#true} {32022#false} #365#return; {32022#false} is VALID [2020-07-10 20:27:47,285 INFO L263 TraceCheckUtils]: 0: Hoare triple {32021#true} call ULTIMATE.init(); {32105#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:27:47,286 INFO L280 TraceCheckUtils]: 1: Hoare triple {32105#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,286 INFO L280 TraceCheckUtils]: 2: Hoare triple {32021#true} ~q_free~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,286 INFO L280 TraceCheckUtils]: 3: Hoare triple {32021#true} ~q_read_ev~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,286 INFO L280 TraceCheckUtils]: 4: Hoare triple {32021#true} ~q_write_ev~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,286 INFO L280 TraceCheckUtils]: 5: Hoare triple {32021#true} ~p_num_write~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,287 INFO L280 TraceCheckUtils]: 6: Hoare triple {32021#true} ~p_last_write~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,287 INFO L280 TraceCheckUtils]: 7: Hoare triple {32021#true} ~p_dw_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,287 INFO L280 TraceCheckUtils]: 8: Hoare triple {32021#true} ~p_dw_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,287 INFO L280 TraceCheckUtils]: 9: Hoare triple {32021#true} ~p_dw_i~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,287 INFO L280 TraceCheckUtils]: 10: Hoare triple {32021#true} ~c_num_read~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,287 INFO L280 TraceCheckUtils]: 11: Hoare triple {32021#true} ~c_last_read~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,288 INFO L280 TraceCheckUtils]: 12: Hoare triple {32021#true} ~c_dr_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,288 INFO L280 TraceCheckUtils]: 13: Hoare triple {32021#true} ~c_dr_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,288 INFO L280 TraceCheckUtils]: 14: Hoare triple {32021#true} ~c_dr_i~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,288 INFO L280 TraceCheckUtils]: 15: Hoare triple {32021#true} ~a_t~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,288 INFO L280 TraceCheckUtils]: 16: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,289 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {32021#true} {32021#true} #361#return; {32021#true} is VALID [2020-07-10 20:27:47,289 INFO L263 TraceCheckUtils]: 18: Hoare triple {32021#true} call #t~ret8 := main(); {32021#true} is VALID [2020-07-10 20:27:47,289 INFO L280 TraceCheckUtils]: 19: Hoare triple {32021#true} havoc ~__retres1~3; {32021#true} is VALID [2020-07-10 20:27:47,290 INFO L263 TraceCheckUtils]: 20: Hoare triple {32021#true} call init_model(); {32106#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:27:47,290 INFO L280 TraceCheckUtils]: 21: Hoare triple {32106#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,291 INFO L280 TraceCheckUtils]: 22: Hoare triple {32021#true} ~q_write_ev~0 := 2; {32021#true} is VALID [2020-07-10 20:27:47,291 INFO L280 TraceCheckUtils]: 23: Hoare triple {32021#true} ~q_read_ev~0 := ~q_write_ev~0; {32021#true} is VALID [2020-07-10 20:27:47,291 INFO L280 TraceCheckUtils]: 24: Hoare triple {32021#true} ~p_num_write~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,291 INFO L280 TraceCheckUtils]: 25: Hoare triple {32021#true} ~p_dw_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,291 INFO L280 TraceCheckUtils]: 26: Hoare triple {32021#true} ~p_dw_i~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,292 INFO L280 TraceCheckUtils]: 27: Hoare triple {32021#true} ~c_num_read~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,292 INFO L280 TraceCheckUtils]: 28: Hoare triple {32021#true} ~c_dr_pc~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,292 INFO L280 TraceCheckUtils]: 29: Hoare triple {32021#true} ~c_dr_i~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,292 INFO L280 TraceCheckUtils]: 30: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,292 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {32021#true} {32021#true} #337#return; {32021#true} is VALID [2020-07-10 20:27:47,292 INFO L263 TraceCheckUtils]: 32: Hoare triple {32021#true} call start_simulation(); {32021#true} is VALID [2020-07-10 20:27:47,293 INFO L280 TraceCheckUtils]: 33: Hoare triple {32021#true} havoc ~kernel_st~0; {32021#true} is VALID [2020-07-10 20:27:47,293 INFO L280 TraceCheckUtils]: 34: Hoare triple {32021#true} havoc ~tmp~3; {32021#true} is VALID [2020-07-10 20:27:47,293 INFO L280 TraceCheckUtils]: 35: Hoare triple {32021#true} ~kernel_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,294 INFO L263 TraceCheckUtils]: 36: Hoare triple {32021#true} call init_threads(); {32107#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:27:47,294 INFO L280 TraceCheckUtils]: 37: Hoare triple {32107#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {32021#true} is VALID [2020-07-10 20:27:47,294 INFO L280 TraceCheckUtils]: 38: Hoare triple {32021#true} ~p_dw_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,294 INFO L280 TraceCheckUtils]: 39: Hoare triple {32021#true} assume 1 == ~c_dr_i~0; {32021#true} is VALID [2020-07-10 20:27:47,295 INFO L280 TraceCheckUtils]: 40: Hoare triple {32021#true} ~c_dr_st~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,295 INFO L280 TraceCheckUtils]: 41: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,295 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {32021#true} {32021#true} #355#return; {32021#true} is VALID [2020-07-10 20:27:47,295 INFO L280 TraceCheckUtils]: 43: Hoare triple {32021#true} assume !false; {32021#true} is VALID [2020-07-10 20:27:47,295 INFO L280 TraceCheckUtils]: 44: Hoare triple {32021#true} ~kernel_st~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,296 INFO L263 TraceCheckUtils]: 45: Hoare triple {32021#true} call eval(); {32021#true} is VALID [2020-07-10 20:27:47,296 INFO L280 TraceCheckUtils]: 46: Hoare triple {32021#true} havoc ~tmp~1; {32021#true} is VALID [2020-07-10 20:27:47,296 INFO L280 TraceCheckUtils]: 47: Hoare triple {32021#true} havoc ~tmp___0~1; {32021#true} is VALID [2020-07-10 20:27:47,296 INFO L280 TraceCheckUtils]: 48: Hoare triple {32021#true} havoc ~tmp___1~0; {32021#true} is VALID [2020-07-10 20:27:47,296 INFO L280 TraceCheckUtils]: 49: Hoare triple {32021#true} assume !false; {32021#true} is VALID [2020-07-10 20:27:47,296 INFO L263 TraceCheckUtils]: 50: Hoare triple {32021#true} call #t~ret3 := exists_runnable_thread(); {32021#true} is VALID [2020-07-10 20:27:47,297 INFO L280 TraceCheckUtils]: 51: Hoare triple {32021#true} havoc ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,297 INFO L280 TraceCheckUtils]: 52: Hoare triple {32021#true} assume 0 == ~p_dw_st~0; {32021#true} is VALID [2020-07-10 20:27:47,297 INFO L280 TraceCheckUtils]: 53: Hoare triple {32021#true} ~__retres1~2 := 1; {32021#true} is VALID [2020-07-10 20:27:47,297 INFO L280 TraceCheckUtils]: 54: Hoare triple {32021#true} #res := ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,297 INFO L280 TraceCheckUtils]: 55: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,298 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {32021#true} {32021#true} #347#return; {32021#true} is VALID [2020-07-10 20:27:47,298 INFO L280 TraceCheckUtils]: 57: Hoare triple {32021#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,298 INFO L280 TraceCheckUtils]: 58: Hoare triple {32021#true} ~tmp___1~0 := #t~ret3; {32021#true} is VALID [2020-07-10 20:27:47,298 INFO L280 TraceCheckUtils]: 59: Hoare triple {32021#true} havoc #t~ret3; {32021#true} is VALID [2020-07-10 20:27:47,298 INFO L280 TraceCheckUtils]: 60: Hoare triple {32021#true} assume 0 != ~tmp___1~0; {32021#true} is VALID [2020-07-10 20:27:47,298 INFO L280 TraceCheckUtils]: 61: Hoare triple {32021#true} assume 0 == ~p_dw_st~0; {32021#true} is VALID [2020-07-10 20:27:47,299 INFO L280 TraceCheckUtils]: 62: Hoare triple {32021#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,299 INFO L280 TraceCheckUtils]: 63: Hoare triple {32021#true} ~tmp~1 := #t~nondet4; {32021#true} is VALID [2020-07-10 20:27:47,299 INFO L280 TraceCheckUtils]: 64: Hoare triple {32021#true} havoc #t~nondet4; {32021#true} is VALID [2020-07-10 20:27:47,299 INFO L280 TraceCheckUtils]: 65: Hoare triple {32021#true} assume !(0 != ~tmp~1); {32021#true} is VALID [2020-07-10 20:27:47,299 INFO L280 TraceCheckUtils]: 66: Hoare triple {32021#true} assume 0 == ~c_dr_st~0; {32021#true} is VALID [2020-07-10 20:27:47,300 INFO L280 TraceCheckUtils]: 67: Hoare triple {32021#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,300 INFO L280 TraceCheckUtils]: 68: Hoare triple {32021#true} ~tmp___0~1 := #t~nondet5; {32021#true} is VALID [2020-07-10 20:27:47,300 INFO L280 TraceCheckUtils]: 69: Hoare triple {32021#true} havoc #t~nondet5; {32021#true} is VALID [2020-07-10 20:27:47,300 INFO L280 TraceCheckUtils]: 70: Hoare triple {32021#true} assume 0 != ~tmp___0~1; {32021#true} is VALID [2020-07-10 20:27:47,300 INFO L280 TraceCheckUtils]: 71: Hoare triple {32021#true} ~c_dr_st~0 := 1; {32021#true} is VALID [2020-07-10 20:27:47,301 INFO L263 TraceCheckUtils]: 72: Hoare triple {32021#true} call do_read_c(); {32108#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|))} is VALID [2020-07-10 20:27:47,302 INFO L280 TraceCheckUtils]: 73: Hoare triple {32108#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|))} havoc ~a~0; {32021#true} is VALID [2020-07-10 20:27:47,302 INFO L280 TraceCheckUtils]: 74: Hoare triple {32021#true} assume 0 == ~c_dr_pc~0; {32021#true} is VALID [2020-07-10 20:27:47,302 INFO L280 TraceCheckUtils]: 75: Hoare triple {32021#true} assume !false; {32021#true} is VALID [2020-07-10 20:27:47,302 INFO L280 TraceCheckUtils]: 76: Hoare triple {32021#true} assume 1 == ~q_free~0; {32021#true} is VALID [2020-07-10 20:27:47,303 INFO L280 TraceCheckUtils]: 77: Hoare triple {32021#true} ~c_dr_st~0 := 2; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,303 INFO L280 TraceCheckUtils]: 78: Hoare triple {32072#(<= 2 ~c_dr_st~0)} ~c_dr_pc~0 := 1; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,304 INFO L280 TraceCheckUtils]: 79: Hoare triple {32072#(<= 2 ~c_dr_st~0)} ~a_t~0 := ~a~0; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,305 INFO L280 TraceCheckUtils]: 80: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume true; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,305 INFO L275 TraceCheckUtils]: 81: Hoare quadruple {32072#(<= 2 ~c_dr_st~0)} {32021#true} #351#return; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,306 INFO L280 TraceCheckUtils]: 82: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume !false; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,306 INFO L263 TraceCheckUtils]: 83: Hoare triple {32072#(<= 2 ~c_dr_st~0)} call #t~ret3 := exists_runnable_thread(); {32021#true} is VALID [2020-07-10 20:27:47,306 INFO L280 TraceCheckUtils]: 84: Hoare triple {32021#true} havoc ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,306 INFO L280 TraceCheckUtils]: 85: Hoare triple {32021#true} assume 0 == ~p_dw_st~0; {32021#true} is VALID [2020-07-10 20:27:47,306 INFO L280 TraceCheckUtils]: 86: Hoare triple {32021#true} ~__retres1~2 := 1; {32021#true} is VALID [2020-07-10 20:27:47,307 INFO L280 TraceCheckUtils]: 87: Hoare triple {32021#true} #res := ~__retres1~2; {32021#true} is VALID [2020-07-10 20:27:47,307 INFO L280 TraceCheckUtils]: 88: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,307 INFO L275 TraceCheckUtils]: 89: Hoare quadruple {32021#true} {32072#(<= 2 ~c_dr_st~0)} #347#return; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,308 INFO L280 TraceCheckUtils]: 90: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,309 INFO L280 TraceCheckUtils]: 91: Hoare triple {32072#(<= 2 ~c_dr_st~0)} ~tmp___1~0 := #t~ret3; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,309 INFO L280 TraceCheckUtils]: 92: Hoare triple {32072#(<= 2 ~c_dr_st~0)} havoc #t~ret3; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,310 INFO L280 TraceCheckUtils]: 93: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume 0 != ~tmp___1~0; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,310 INFO L280 TraceCheckUtils]: 94: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume 0 == ~p_dw_st~0; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,311 INFO L280 TraceCheckUtils]: 95: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,311 INFO L280 TraceCheckUtils]: 96: Hoare triple {32072#(<= 2 ~c_dr_st~0)} ~tmp~1 := #t~nondet4; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,312 INFO L280 TraceCheckUtils]: 97: Hoare triple {32072#(<= 2 ~c_dr_st~0)} havoc #t~nondet4; {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,312 INFO L280 TraceCheckUtils]: 98: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume !(0 != ~tmp~1); {32072#(<= 2 ~c_dr_st~0)} is VALID [2020-07-10 20:27:47,313 INFO L280 TraceCheckUtils]: 99: Hoare triple {32072#(<= 2 ~c_dr_st~0)} assume 0 == ~c_dr_st~0; {32022#false} is VALID [2020-07-10 20:27:47,313 INFO L280 TraceCheckUtils]: 100: Hoare triple {32022#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {32022#false} is VALID [2020-07-10 20:27:47,313 INFO L280 TraceCheckUtils]: 101: Hoare triple {32022#false} ~tmp___0~1 := #t~nondet5; {32022#false} is VALID [2020-07-10 20:27:47,313 INFO L280 TraceCheckUtils]: 102: Hoare triple {32022#false} havoc #t~nondet5; {32022#false} is VALID [2020-07-10 20:27:47,314 INFO L280 TraceCheckUtils]: 103: Hoare triple {32022#false} assume 0 != ~tmp___0~1; {32022#false} is VALID [2020-07-10 20:27:47,314 INFO L280 TraceCheckUtils]: 104: Hoare triple {32022#false} ~c_dr_st~0 := 1; {32022#false} is VALID [2020-07-10 20:27:47,314 INFO L263 TraceCheckUtils]: 105: Hoare triple {32022#false} call do_read_c(); {32022#false} is VALID [2020-07-10 20:27:47,314 INFO L280 TraceCheckUtils]: 106: Hoare triple {32022#false} havoc ~a~0; {32022#false} is VALID [2020-07-10 20:27:47,314 INFO L280 TraceCheckUtils]: 107: Hoare triple {32022#false} assume !(0 == ~c_dr_pc~0); {32022#false} is VALID [2020-07-10 20:27:47,315 INFO L280 TraceCheckUtils]: 108: Hoare triple {32022#false} assume 1 == ~c_dr_pc~0; {32022#false} is VALID [2020-07-10 20:27:47,315 INFO L280 TraceCheckUtils]: 109: Hoare triple {32022#false} ~a~0 := ~a_t~0; {32022#false} is VALID [2020-07-10 20:27:47,315 INFO L280 TraceCheckUtils]: 110: Hoare triple {32022#false} ~a~0 := ~q_buf_0~0; {32022#false} is VALID [2020-07-10 20:27:47,315 INFO L280 TraceCheckUtils]: 111: Hoare triple {32022#false} ~c_last_read~0 := ~a~0; {32022#false} is VALID [2020-07-10 20:27:47,315 INFO L280 TraceCheckUtils]: 112: Hoare triple {32022#false} ~c_num_read~0 := 1 + ~c_num_read~0; {32022#false} is VALID [2020-07-10 20:27:47,316 INFO L280 TraceCheckUtils]: 113: Hoare triple {32022#false} ~q_free~0 := 1; {32022#false} is VALID [2020-07-10 20:27:47,316 INFO L280 TraceCheckUtils]: 114: Hoare triple {32022#false} ~q_read_ev~0 := 1; {32022#false} is VALID [2020-07-10 20:27:47,316 INFO L263 TraceCheckUtils]: 115: Hoare triple {32022#false} call immediate_notify_threads(); {32107#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:27:47,316 INFO L280 TraceCheckUtils]: 116: Hoare triple {32107#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {32021#true} is VALID [2020-07-10 20:27:47,317 INFO L280 TraceCheckUtils]: 117: Hoare triple {32021#true} havoc ~tmp___0~0; {32021#true} is VALID [2020-07-10 20:27:47,317 INFO L263 TraceCheckUtils]: 118: Hoare triple {32021#true} call #t~ret0 := is_do_write_p_triggered(); {32021#true} is VALID [2020-07-10 20:27:47,317 INFO L280 TraceCheckUtils]: 119: Hoare triple {32021#true} havoc ~__retres1~0; {32021#true} is VALID [2020-07-10 20:27:47,317 INFO L280 TraceCheckUtils]: 120: Hoare triple {32021#true} assume !(1 == ~p_dw_pc~0); {32021#true} is VALID [2020-07-10 20:27:47,317 INFO L280 TraceCheckUtils]: 121: Hoare triple {32021#true} ~__retres1~0 := 0; {32021#true} is VALID [2020-07-10 20:27:47,318 INFO L280 TraceCheckUtils]: 122: Hoare triple {32021#true} #res := ~__retres1~0; {32021#true} is VALID [2020-07-10 20:27:47,318 INFO L280 TraceCheckUtils]: 123: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,318 INFO L275 TraceCheckUtils]: 124: Hoare quadruple {32021#true} {32021#true} #343#return; {32021#true} is VALID [2020-07-10 20:27:47,318 INFO L280 TraceCheckUtils]: 125: Hoare triple {32021#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,319 INFO L280 TraceCheckUtils]: 126: Hoare triple {32021#true} ~tmp~0 := #t~ret0; {32021#true} is VALID [2020-07-10 20:27:47,319 INFO L280 TraceCheckUtils]: 127: Hoare triple {32021#true} havoc #t~ret0; {32021#true} is VALID [2020-07-10 20:27:47,319 INFO L280 TraceCheckUtils]: 128: Hoare triple {32021#true} assume !(0 != ~tmp~0); {32021#true} is VALID [2020-07-10 20:27:47,319 INFO L263 TraceCheckUtils]: 129: Hoare triple {32021#true} call #t~ret1 := is_do_read_c_triggered(); {32021#true} is VALID [2020-07-10 20:27:47,320 INFO L280 TraceCheckUtils]: 130: Hoare triple {32021#true} havoc ~__retres1~1; {32021#true} is VALID [2020-07-10 20:27:47,320 INFO L280 TraceCheckUtils]: 131: Hoare triple {32021#true} assume !(1 == ~c_dr_pc~0); {32021#true} is VALID [2020-07-10 20:27:47,320 INFO L280 TraceCheckUtils]: 132: Hoare triple {32021#true} ~__retres1~1 := 0; {32021#true} is VALID [2020-07-10 20:27:47,320 INFO L280 TraceCheckUtils]: 133: Hoare triple {32021#true} #res := ~__retres1~1; {32021#true} is VALID [2020-07-10 20:27:47,320 INFO L280 TraceCheckUtils]: 134: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,321 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {32021#true} {32021#true} #345#return; {32021#true} is VALID [2020-07-10 20:27:47,321 INFO L280 TraceCheckUtils]: 136: Hoare triple {32021#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {32021#true} is VALID [2020-07-10 20:27:47,321 INFO L280 TraceCheckUtils]: 137: Hoare triple {32021#true} ~tmp___0~0 := #t~ret1; {32021#true} is VALID [2020-07-10 20:27:47,321 INFO L280 TraceCheckUtils]: 138: Hoare triple {32021#true} havoc #t~ret1; {32021#true} is VALID [2020-07-10 20:27:47,321 INFO L280 TraceCheckUtils]: 139: Hoare triple {32021#true} assume !(0 != ~tmp___0~0); {32021#true} is VALID [2020-07-10 20:27:47,322 INFO L280 TraceCheckUtils]: 140: Hoare triple {32021#true} assume true; {32021#true} is VALID [2020-07-10 20:27:47,322 INFO L275 TraceCheckUtils]: 141: Hoare quadruple {32021#true} {32022#false} #365#return; {32022#false} is VALID [2020-07-10 20:27:47,322 INFO L280 TraceCheckUtils]: 142: Hoare triple {32022#false} ~q_read_ev~0 := 2; {32022#false} is VALID [2020-07-10 20:27:47,322 INFO L280 TraceCheckUtils]: 143: Hoare triple {32022#false} assume !(~p_last_write~0 == ~c_last_read~0); {32022#false} is VALID [2020-07-10 20:27:47,322 INFO L263 TraceCheckUtils]: 144: Hoare triple {32022#false} call error(); {32022#false} is VALID [2020-07-10 20:27:47,323 INFO L280 TraceCheckUtils]: 145: Hoare triple {32022#false} assume !false; {32022#false} is VALID [2020-07-10 20:27:47,339 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:27:47,340 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:27:47,340 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [77740483] [2020-07-10 20:27:47,340 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:27:47,340 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2020-07-10 20:27:47,341 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [583531549] [2020-07-10 20:27:47,341 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 146 [2020-07-10 20:27:47,342 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:27:47,343 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-10 20:27:47,473 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:27:47,474 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-10 20:27:47,474 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:27:47,474 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-10 20:27:47,474 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2020-07-10 20:27:47,474 INFO L87 Difference]: Start difference. First operand 2294 states and 3263 transitions. Second operand 7 states. [2020-07-10 20:28:19,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:28:19,545 INFO L93 Difference]: Finished difference Result 5863 states and 9441 transitions. [2020-07-10 20:28:19,545 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-10 20:28:19,545 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 146 [2020-07-10 20:28:19,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:28:19,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:28:19,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 637 transitions. [2020-07-10 20:28:19,549 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:28:19,556 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 637 transitions. [2020-07-10 20:28:19,556 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 637 transitions. [2020-07-10 20:28:20,474 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 637 edges. 637 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:28:21,112 INFO L225 Difference]: With dead ends: 5863 [2020-07-10 20:28:21,113 INFO L226 Difference]: Without dead ends: 3613 [2020-07-10 20:28:21,139 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=65, Invalid=117, Unknown=0, NotChecked=0, Total=182 [2020-07-10 20:28:21,143 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3613 states. [2020-07-10 20:28:45,802 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3613 to 3285. [2020-07-10 20:28:45,803 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:28:45,803 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3613 states. Second operand 3285 states. [2020-07-10 20:28:45,803 INFO L74 IsIncluded]: Start isIncluded. First operand 3613 states. Second operand 3285 states. [2020-07-10 20:28:45,803 INFO L87 Difference]: Start difference. First operand 3613 states. Second operand 3285 states. [2020-07-10 20:28:46,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:28:46,357 INFO L93 Difference]: Finished difference Result 3613 states and 5533 transitions. [2020-07-10 20:28:46,357 INFO L276 IsEmpty]: Start isEmpty. Operand 3613 states and 5533 transitions. [2020-07-10 20:28:46,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:28:46,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:28:46,393 INFO L74 IsIncluded]: Start isIncluded. First operand 3285 states. Second operand 3613 states. [2020-07-10 20:28:46,393 INFO L87 Difference]: Start difference. First operand 3285 states. Second operand 3613 states. [2020-07-10 20:28:46,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:28:46,959 INFO L93 Difference]: Finished difference Result 3613 states and 5533 transitions. [2020-07-10 20:28:46,959 INFO L276 IsEmpty]: Start isEmpty. Operand 3613 states and 5533 transitions. [2020-07-10 20:28:46,974 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:28:46,974 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:28:46,974 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:28:46,974 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:28:46,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3285 states. [2020-07-10 20:28:47,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3285 states to 3285 states and 5072 transitions. [2020-07-10 20:28:47,442 INFO L78 Accepts]: Start accepts. Automaton has 3285 states and 5072 transitions. Word has length 146 [2020-07-10 20:28:47,442 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:28:47,442 INFO L479 AbstractCegarLoop]: Abstraction has 3285 states and 5072 transitions. [2020-07-10 20:28:47,442 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-10 20:28:47,443 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3285 states and 5072 transitions. [2020-07-10 20:28:59,891 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 5072 edges. 5072 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:28:59,892 INFO L276 IsEmpty]: Start isEmpty. Operand 3285 states and 5072 transitions. [2020-07-10 20:28:59,895 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 160 [2020-07-10 20:28:59,896 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:28:59,896 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:28:59,896 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-10 20:28:59,896 INFO L427 AbstractCegarLoop]: === Iteration 6 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:28:59,897 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:28:59,897 INFO L82 PathProgramCache]: Analyzing trace with hash 2130517064, now seen corresponding path program 1 times [2020-07-10 20:28:59,897 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:28:59,897 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1992200303] [2020-07-10 20:28:59,897 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:28:59,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,048 INFO L280 TraceCheckUtils]: 0: Hoare triple {57775#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,049 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} ~q_free~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,049 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~q_read_ev~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,049 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} ~q_write_ev~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,049 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} ~p_num_write~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,049 INFO L280 TraceCheckUtils]: 5: Hoare triple {57662#true} ~p_last_write~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,050 INFO L280 TraceCheckUtils]: 6: Hoare triple {57662#true} ~p_dw_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,050 INFO L280 TraceCheckUtils]: 7: Hoare triple {57662#true} ~p_dw_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,050 INFO L280 TraceCheckUtils]: 8: Hoare triple {57662#true} ~p_dw_i~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,050 INFO L280 TraceCheckUtils]: 9: Hoare triple {57662#true} ~c_num_read~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,050 INFO L280 TraceCheckUtils]: 10: Hoare triple {57662#true} ~c_last_read~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,051 INFO L280 TraceCheckUtils]: 11: Hoare triple {57662#true} ~c_dr_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,051 INFO L280 TraceCheckUtils]: 12: Hoare triple {57662#true} ~c_dr_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,051 INFO L280 TraceCheckUtils]: 13: Hoare triple {57662#true} ~c_dr_i~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,051 INFO L280 TraceCheckUtils]: 14: Hoare triple {57662#true} ~a_t~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,051 INFO L280 TraceCheckUtils]: 15: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,052 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {57662#true} {57662#true} #361#return; {57662#true} is VALID [2020-07-10 20:29:00,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,087 INFO L280 TraceCheckUtils]: 0: Hoare triple {57776#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,087 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} ~q_write_ev~0 := 2; {57662#true} is VALID [2020-07-10 20:29:00,087 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~q_read_ev~0 := ~q_write_ev~0; {57662#true} is VALID [2020-07-10 20:29:00,088 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} ~p_num_write~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,088 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} ~p_dw_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,088 INFO L280 TraceCheckUtils]: 5: Hoare triple {57662#true} ~p_dw_i~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,089 INFO L280 TraceCheckUtils]: 6: Hoare triple {57662#true} ~c_num_read~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,089 INFO L280 TraceCheckUtils]: 7: Hoare triple {57662#true} ~c_dr_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,090 INFO L280 TraceCheckUtils]: 8: Hoare triple {57662#true} ~c_dr_i~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,090 INFO L280 TraceCheckUtils]: 9: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,090 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {57662#true} {57662#true} #337#return; {57662#true} is VALID [2020-07-10 20:29:00,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,117 INFO L280 TraceCheckUtils]: 0: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {57662#true} is VALID [2020-07-10 20:29:00,117 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} ~p_dw_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,118 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} assume 1 == ~c_dr_i~0; {57662#true} is VALID [2020-07-10 20:29:00,118 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} ~c_dr_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,118 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,119 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {57662#true} {57662#true} #355#return; {57662#true} is VALID [2020-07-10 20:29:00,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,123 INFO L280 TraceCheckUtils]: 0: Hoare triple {57662#true} havoc ~__retres1~2; {57662#true} is VALID [2020-07-10 20:29:00,123 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} assume 0 == ~p_dw_st~0; {57662#true} is VALID [2020-07-10 20:29:00,124 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~__retres1~2 := 1; {57662#true} is VALID [2020-07-10 20:29:00,124 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} #res := ~__retres1~2; {57662#true} is VALID [2020-07-10 20:29:00,124 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,125 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {57662#true} {57662#true} #347#return; {57662#true} is VALID [2020-07-10 20:29:00,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,206 INFO L280 TraceCheckUtils]: 0: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,207 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,207 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~__retres1~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,207 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} #res := ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,207 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,208 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {57662#true} {57662#true} #343#return; {57662#true} is VALID [2020-07-10 20:29:00,208 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,211 INFO L280 TraceCheckUtils]: 0: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,211 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,211 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,211 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,212 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,212 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {57662#true} {57662#true} #345#return; {57662#true} is VALID [2020-07-10 20:29:00,212 INFO L280 TraceCheckUtils]: 0: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {57662#true} is VALID [2020-07-10 20:29:00,212 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} havoc ~tmp___0~0; {57662#true} is VALID [2020-07-10 20:29:00,213 INFO L263 TraceCheckUtils]: 2: Hoare triple {57662#true} call #t~ret0 := is_do_write_p_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,213 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,213 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,213 INFO L280 TraceCheckUtils]: 5: Hoare triple {57662#true} ~__retres1~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,213 INFO L280 TraceCheckUtils]: 6: Hoare triple {57662#true} #res := ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,214 INFO L280 TraceCheckUtils]: 7: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,214 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {57662#true} {57662#true} #343#return; {57662#true} is VALID [2020-07-10 20:29:00,214 INFO L280 TraceCheckUtils]: 9: Hoare triple {57662#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,214 INFO L280 TraceCheckUtils]: 10: Hoare triple {57662#true} ~tmp~0 := #t~ret0; {57662#true} is VALID [2020-07-10 20:29:00,215 INFO L280 TraceCheckUtils]: 11: Hoare triple {57662#true} havoc #t~ret0; {57662#true} is VALID [2020-07-10 20:29:00,215 INFO L280 TraceCheckUtils]: 12: Hoare triple {57662#true} assume !(0 != ~tmp~0); {57662#true} is VALID [2020-07-10 20:29:00,215 INFO L263 TraceCheckUtils]: 13: Hoare triple {57662#true} call #t~ret1 := is_do_read_c_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,215 INFO L280 TraceCheckUtils]: 14: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,215 INFO L280 TraceCheckUtils]: 15: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,216 INFO L280 TraceCheckUtils]: 16: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,216 INFO L280 TraceCheckUtils]: 17: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,216 INFO L280 TraceCheckUtils]: 18: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,216 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {57662#true} {57662#true} #345#return; {57662#true} is VALID [2020-07-10 20:29:00,217 INFO L280 TraceCheckUtils]: 20: Hoare triple {57662#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,217 INFO L280 TraceCheckUtils]: 21: Hoare triple {57662#true} ~tmp___0~0 := #t~ret1; {57662#true} is VALID [2020-07-10 20:29:00,217 INFO L280 TraceCheckUtils]: 22: Hoare triple {57662#true} havoc #t~ret1; {57662#true} is VALID [2020-07-10 20:29:00,217 INFO L280 TraceCheckUtils]: 23: Hoare triple {57662#true} assume !(0 != ~tmp___0~0); {57662#true} is VALID [2020-07-10 20:29:00,218 INFO L280 TraceCheckUtils]: 24: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,218 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {57662#true} {57662#true} #341#return; {57662#true} is VALID [2020-07-10 20:29:00,218 INFO L280 TraceCheckUtils]: 0: Hoare triple {57778#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {57662#true} is VALID [2020-07-10 20:29:00,219 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} assume !false; {57662#true} is VALID [2020-07-10 20:29:00,219 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} assume !(0 == ~q_free~0); {57662#true} is VALID [2020-07-10 20:29:00,219 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,219 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} ~q_buf_0~0 := #t~nondet2; {57662#true} is VALID [2020-07-10 20:29:00,220 INFO L280 TraceCheckUtils]: 5: Hoare triple {57662#true} havoc #t~nondet2; {57662#true} is VALID [2020-07-10 20:29:00,220 INFO L280 TraceCheckUtils]: 6: Hoare triple {57662#true} ~p_last_write~0 := ~q_buf_0~0; {57662#true} is VALID [2020-07-10 20:29:00,220 INFO L280 TraceCheckUtils]: 7: Hoare triple {57662#true} ~p_num_write~0 := 1 + ~p_num_write~0; {57662#true} is VALID [2020-07-10 20:29:00,220 INFO L280 TraceCheckUtils]: 8: Hoare triple {57662#true} ~q_free~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,221 INFO L280 TraceCheckUtils]: 9: Hoare triple {57662#true} ~q_write_ev~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,221 INFO L263 TraceCheckUtils]: 10: Hoare triple {57662#true} call immediate_notify_threads(); {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:00,222 INFO L280 TraceCheckUtils]: 11: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {57662#true} is VALID [2020-07-10 20:29:00,222 INFO L280 TraceCheckUtils]: 12: Hoare triple {57662#true} havoc ~tmp___0~0; {57662#true} is VALID [2020-07-10 20:29:00,222 INFO L263 TraceCheckUtils]: 13: Hoare triple {57662#true} call #t~ret0 := is_do_write_p_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,222 INFO L280 TraceCheckUtils]: 14: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,222 INFO L280 TraceCheckUtils]: 15: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,223 INFO L280 TraceCheckUtils]: 16: Hoare triple {57662#true} ~__retres1~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,223 INFO L280 TraceCheckUtils]: 17: Hoare triple {57662#true} #res := ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,223 INFO L280 TraceCheckUtils]: 18: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,223 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {57662#true} {57662#true} #343#return; {57662#true} is VALID [2020-07-10 20:29:00,223 INFO L280 TraceCheckUtils]: 20: Hoare triple {57662#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,224 INFO L280 TraceCheckUtils]: 21: Hoare triple {57662#true} ~tmp~0 := #t~ret0; {57662#true} is VALID [2020-07-10 20:29:00,224 INFO L280 TraceCheckUtils]: 22: Hoare triple {57662#true} havoc #t~ret0; {57662#true} is VALID [2020-07-10 20:29:00,224 INFO L280 TraceCheckUtils]: 23: Hoare triple {57662#true} assume !(0 != ~tmp~0); {57662#true} is VALID [2020-07-10 20:29:00,225 INFO L263 TraceCheckUtils]: 24: Hoare triple {57662#true} call #t~ret1 := is_do_read_c_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,225 INFO L280 TraceCheckUtils]: 25: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,225 INFO L280 TraceCheckUtils]: 26: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,226 INFO L280 TraceCheckUtils]: 27: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,226 INFO L280 TraceCheckUtils]: 28: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,226 INFO L280 TraceCheckUtils]: 29: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,227 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {57662#true} {57662#true} #345#return; {57662#true} is VALID [2020-07-10 20:29:00,227 INFO L280 TraceCheckUtils]: 31: Hoare triple {57662#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,227 INFO L280 TraceCheckUtils]: 32: Hoare triple {57662#true} ~tmp___0~0 := #t~ret1; {57662#true} is VALID [2020-07-10 20:29:00,228 INFO L280 TraceCheckUtils]: 33: Hoare triple {57662#true} havoc #t~ret1; {57662#true} is VALID [2020-07-10 20:29:00,228 INFO L280 TraceCheckUtils]: 34: Hoare triple {57662#true} assume !(0 != ~tmp___0~0); {57662#true} is VALID [2020-07-10 20:29:00,228 INFO L280 TraceCheckUtils]: 35: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,229 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {57662#true} {57662#true} #341#return; {57662#true} is VALID [2020-07-10 20:29:00,229 INFO L280 TraceCheckUtils]: 37: Hoare triple {57662#true} ~q_write_ev~0 := 2; {57662#true} is VALID [2020-07-10 20:29:00,229 INFO L280 TraceCheckUtils]: 38: Hoare triple {57662#true} assume !false; {57662#true} is VALID [2020-07-10 20:29:00,230 INFO L280 TraceCheckUtils]: 39: Hoare triple {57662#true} assume 0 == ~q_free~0; {57662#true} is VALID [2020-07-10 20:29:00,230 INFO L280 TraceCheckUtils]: 40: Hoare triple {57662#true} ~p_dw_st~0 := 2; {57662#true} is VALID [2020-07-10 20:29:00,231 INFO L280 TraceCheckUtils]: 41: Hoare triple {57662#true} ~p_dw_pc~0 := 1; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,232 INFO L280 TraceCheckUtils]: 42: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume true; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,233 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {57748#(= 1 ~p_dw_pc~0)} {57662#true} #349#return; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,276 INFO L280 TraceCheckUtils]: 0: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,277 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,278 INFO L280 TraceCheckUtils]: 2: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~__retres1~0 := 0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,278 INFO L280 TraceCheckUtils]: 3: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} #res := ~__retres1~0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,279 INFO L280 TraceCheckUtils]: 4: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume true; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,280 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {57823#(not (= 1 ~p_dw_pc~0))} {57662#true} #343#return; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:00,284 INFO L280 TraceCheckUtils]: 0: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,284 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,284 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,285 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,285 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,286 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {57662#true} {57823#(not (= 1 ~p_dw_pc~0))} #345#return; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,286 INFO L280 TraceCheckUtils]: 0: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {57662#true} is VALID [2020-07-10 20:29:00,286 INFO L280 TraceCheckUtils]: 1: Hoare triple {57662#true} havoc ~tmp___0~0; {57662#true} is VALID [2020-07-10 20:29:00,286 INFO L263 TraceCheckUtils]: 2: Hoare triple {57662#true} call #t~ret0 := is_do_write_p_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,287 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,287 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,288 INFO L280 TraceCheckUtils]: 5: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~__retres1~0 := 0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,289 INFO L280 TraceCheckUtils]: 6: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} #res := ~__retres1~0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,289 INFO L280 TraceCheckUtils]: 7: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume true; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,291 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {57823#(not (= 1 ~p_dw_pc~0))} {57662#true} #343#return; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,291 INFO L280 TraceCheckUtils]: 9: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,292 INFO L280 TraceCheckUtils]: 10: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~tmp~0 := #t~ret0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,293 INFO L280 TraceCheckUtils]: 11: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} havoc #t~ret0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,294 INFO L280 TraceCheckUtils]: 12: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume !(0 != ~tmp~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,294 INFO L263 TraceCheckUtils]: 13: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} call #t~ret1 := is_do_read_c_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,295 INFO L280 TraceCheckUtils]: 14: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,295 INFO L280 TraceCheckUtils]: 15: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,295 INFO L280 TraceCheckUtils]: 16: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,296 INFO L280 TraceCheckUtils]: 17: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,296 INFO L280 TraceCheckUtils]: 18: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,297 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {57662#true} {57823#(not (= 1 ~p_dw_pc~0))} #345#return; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,298 INFO L280 TraceCheckUtils]: 20: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,299 INFO L280 TraceCheckUtils]: 21: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~tmp___0~0 := #t~ret1; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,299 INFO L280 TraceCheckUtils]: 22: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} havoc #t~ret1; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,300 INFO L280 TraceCheckUtils]: 23: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume !(0 != ~tmp___0~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,301 INFO L280 TraceCheckUtils]: 24: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume true; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,302 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {57823#(not (= 1 ~p_dw_pc~0))} {57748#(= 1 ~p_dw_pc~0)} #365#return; {57663#false} is VALID [2020-07-10 20:29:00,306 INFO L263 TraceCheckUtils]: 0: Hoare triple {57662#true} call ULTIMATE.init(); {57775#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:29:00,306 INFO L280 TraceCheckUtils]: 1: Hoare triple {57775#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,306 INFO L280 TraceCheckUtils]: 2: Hoare triple {57662#true} ~q_free~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,307 INFO L280 TraceCheckUtils]: 3: Hoare triple {57662#true} ~q_read_ev~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,307 INFO L280 TraceCheckUtils]: 4: Hoare triple {57662#true} ~q_write_ev~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,307 INFO L280 TraceCheckUtils]: 5: Hoare triple {57662#true} ~p_num_write~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,308 INFO L280 TraceCheckUtils]: 6: Hoare triple {57662#true} ~p_last_write~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,308 INFO L280 TraceCheckUtils]: 7: Hoare triple {57662#true} ~p_dw_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,308 INFO L280 TraceCheckUtils]: 8: Hoare triple {57662#true} ~p_dw_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,308 INFO L280 TraceCheckUtils]: 9: Hoare triple {57662#true} ~p_dw_i~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,309 INFO L280 TraceCheckUtils]: 10: Hoare triple {57662#true} ~c_num_read~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,309 INFO L280 TraceCheckUtils]: 11: Hoare triple {57662#true} ~c_last_read~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,309 INFO L280 TraceCheckUtils]: 12: Hoare triple {57662#true} ~c_dr_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,310 INFO L280 TraceCheckUtils]: 13: Hoare triple {57662#true} ~c_dr_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,310 INFO L280 TraceCheckUtils]: 14: Hoare triple {57662#true} ~c_dr_i~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,310 INFO L280 TraceCheckUtils]: 15: Hoare triple {57662#true} ~a_t~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,310 INFO L280 TraceCheckUtils]: 16: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,311 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {57662#true} {57662#true} #361#return; {57662#true} is VALID [2020-07-10 20:29:00,311 INFO L263 TraceCheckUtils]: 18: Hoare triple {57662#true} call #t~ret8 := main(); {57662#true} is VALID [2020-07-10 20:29:00,311 INFO L280 TraceCheckUtils]: 19: Hoare triple {57662#true} havoc ~__retres1~3; {57662#true} is VALID [2020-07-10 20:29:00,312 INFO L263 TraceCheckUtils]: 20: Hoare triple {57662#true} call init_model(); {57776#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:29:00,313 INFO L280 TraceCheckUtils]: 21: Hoare triple {57776#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,313 INFO L280 TraceCheckUtils]: 22: Hoare triple {57662#true} ~q_write_ev~0 := 2; {57662#true} is VALID [2020-07-10 20:29:00,313 INFO L280 TraceCheckUtils]: 23: Hoare triple {57662#true} ~q_read_ev~0 := ~q_write_ev~0; {57662#true} is VALID [2020-07-10 20:29:00,313 INFO L280 TraceCheckUtils]: 24: Hoare triple {57662#true} ~p_num_write~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,313 INFO L280 TraceCheckUtils]: 25: Hoare triple {57662#true} ~p_dw_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,314 INFO L280 TraceCheckUtils]: 26: Hoare triple {57662#true} ~p_dw_i~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,314 INFO L280 TraceCheckUtils]: 27: Hoare triple {57662#true} ~c_num_read~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,314 INFO L280 TraceCheckUtils]: 28: Hoare triple {57662#true} ~c_dr_pc~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,314 INFO L280 TraceCheckUtils]: 29: Hoare triple {57662#true} ~c_dr_i~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,314 INFO L280 TraceCheckUtils]: 30: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,315 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {57662#true} {57662#true} #337#return; {57662#true} is VALID [2020-07-10 20:29:00,315 INFO L263 TraceCheckUtils]: 32: Hoare triple {57662#true} call start_simulation(); {57662#true} is VALID [2020-07-10 20:29:00,315 INFO L280 TraceCheckUtils]: 33: Hoare triple {57662#true} havoc ~kernel_st~0; {57662#true} is VALID [2020-07-10 20:29:00,315 INFO L280 TraceCheckUtils]: 34: Hoare triple {57662#true} havoc ~tmp~3; {57662#true} is VALID [2020-07-10 20:29:00,315 INFO L280 TraceCheckUtils]: 35: Hoare triple {57662#true} ~kernel_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,316 INFO L263 TraceCheckUtils]: 36: Hoare triple {57662#true} call init_threads(); {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:00,316 INFO L280 TraceCheckUtils]: 37: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {57662#true} is VALID [2020-07-10 20:29:00,316 INFO L280 TraceCheckUtils]: 38: Hoare triple {57662#true} ~p_dw_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,317 INFO L280 TraceCheckUtils]: 39: Hoare triple {57662#true} assume 1 == ~c_dr_i~0; {57662#true} is VALID [2020-07-10 20:29:00,317 INFO L280 TraceCheckUtils]: 40: Hoare triple {57662#true} ~c_dr_st~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,317 INFO L280 TraceCheckUtils]: 41: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,317 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {57662#true} {57662#true} #355#return; {57662#true} is VALID [2020-07-10 20:29:00,317 INFO L280 TraceCheckUtils]: 43: Hoare triple {57662#true} assume !false; {57662#true} is VALID [2020-07-10 20:29:00,318 INFO L280 TraceCheckUtils]: 44: Hoare triple {57662#true} ~kernel_st~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,318 INFO L263 TraceCheckUtils]: 45: Hoare triple {57662#true} call eval(); {57662#true} is VALID [2020-07-10 20:29:00,318 INFO L280 TraceCheckUtils]: 46: Hoare triple {57662#true} havoc ~tmp~1; {57662#true} is VALID [2020-07-10 20:29:00,318 INFO L280 TraceCheckUtils]: 47: Hoare triple {57662#true} havoc ~tmp___0~1; {57662#true} is VALID [2020-07-10 20:29:00,318 INFO L280 TraceCheckUtils]: 48: Hoare triple {57662#true} havoc ~tmp___1~0; {57662#true} is VALID [2020-07-10 20:29:00,319 INFO L280 TraceCheckUtils]: 49: Hoare triple {57662#true} assume !false; {57662#true} is VALID [2020-07-10 20:29:00,319 INFO L263 TraceCheckUtils]: 50: Hoare triple {57662#true} call #t~ret3 := exists_runnable_thread(); {57662#true} is VALID [2020-07-10 20:29:00,319 INFO L280 TraceCheckUtils]: 51: Hoare triple {57662#true} havoc ~__retres1~2; {57662#true} is VALID [2020-07-10 20:29:00,320 INFO L280 TraceCheckUtils]: 52: Hoare triple {57662#true} assume 0 == ~p_dw_st~0; {57662#true} is VALID [2020-07-10 20:29:00,320 INFO L280 TraceCheckUtils]: 53: Hoare triple {57662#true} ~__retres1~2 := 1; {57662#true} is VALID [2020-07-10 20:29:00,320 INFO L280 TraceCheckUtils]: 54: Hoare triple {57662#true} #res := ~__retres1~2; {57662#true} is VALID [2020-07-10 20:29:00,321 INFO L280 TraceCheckUtils]: 55: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,321 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {57662#true} {57662#true} #347#return; {57662#true} is VALID [2020-07-10 20:29:00,321 INFO L280 TraceCheckUtils]: 57: Hoare triple {57662#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,322 INFO L280 TraceCheckUtils]: 58: Hoare triple {57662#true} ~tmp___1~0 := #t~ret3; {57662#true} is VALID [2020-07-10 20:29:00,322 INFO L280 TraceCheckUtils]: 59: Hoare triple {57662#true} havoc #t~ret3; {57662#true} is VALID [2020-07-10 20:29:00,322 INFO L280 TraceCheckUtils]: 60: Hoare triple {57662#true} assume 0 != ~tmp___1~0; {57662#true} is VALID [2020-07-10 20:29:00,322 INFO L280 TraceCheckUtils]: 61: Hoare triple {57662#true} assume 0 == ~p_dw_st~0; {57662#true} is VALID [2020-07-10 20:29:00,323 INFO L280 TraceCheckUtils]: 62: Hoare triple {57662#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,323 INFO L280 TraceCheckUtils]: 63: Hoare triple {57662#true} ~tmp~1 := #t~nondet4; {57662#true} is VALID [2020-07-10 20:29:00,323 INFO L280 TraceCheckUtils]: 64: Hoare triple {57662#true} havoc #t~nondet4; {57662#true} is VALID [2020-07-10 20:29:00,324 INFO L280 TraceCheckUtils]: 65: Hoare triple {57662#true} assume 0 != ~tmp~1; {57662#true} is VALID [2020-07-10 20:29:00,324 INFO L280 TraceCheckUtils]: 66: Hoare triple {57662#true} ~p_dw_st~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,326 INFO L263 TraceCheckUtils]: 67: Hoare triple {57662#true} call do_write_p(); {57778#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:29:00,326 INFO L280 TraceCheckUtils]: 68: Hoare triple {57778#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {57662#true} is VALID [2020-07-10 20:29:00,326 INFO L280 TraceCheckUtils]: 69: Hoare triple {57662#true} assume !false; {57662#true} is VALID [2020-07-10 20:29:00,326 INFO L280 TraceCheckUtils]: 70: Hoare triple {57662#true} assume !(0 == ~q_free~0); {57662#true} is VALID [2020-07-10 20:29:00,327 INFO L280 TraceCheckUtils]: 71: Hoare triple {57662#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,327 INFO L280 TraceCheckUtils]: 72: Hoare triple {57662#true} ~q_buf_0~0 := #t~nondet2; {57662#true} is VALID [2020-07-10 20:29:00,327 INFO L280 TraceCheckUtils]: 73: Hoare triple {57662#true} havoc #t~nondet2; {57662#true} is VALID [2020-07-10 20:29:00,328 INFO L280 TraceCheckUtils]: 74: Hoare triple {57662#true} ~p_last_write~0 := ~q_buf_0~0; {57662#true} is VALID [2020-07-10 20:29:00,328 INFO L280 TraceCheckUtils]: 75: Hoare triple {57662#true} ~p_num_write~0 := 1 + ~p_num_write~0; {57662#true} is VALID [2020-07-10 20:29:00,328 INFO L280 TraceCheckUtils]: 76: Hoare triple {57662#true} ~q_free~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,329 INFO L280 TraceCheckUtils]: 77: Hoare triple {57662#true} ~q_write_ev~0 := 1; {57662#true} is VALID [2020-07-10 20:29:00,330 INFO L263 TraceCheckUtils]: 78: Hoare triple {57662#true} call immediate_notify_threads(); {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:00,330 INFO L280 TraceCheckUtils]: 79: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {57662#true} is VALID [2020-07-10 20:29:00,330 INFO L280 TraceCheckUtils]: 80: Hoare triple {57662#true} havoc ~tmp___0~0; {57662#true} is VALID [2020-07-10 20:29:00,331 INFO L263 TraceCheckUtils]: 81: Hoare triple {57662#true} call #t~ret0 := is_do_write_p_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,331 INFO L280 TraceCheckUtils]: 82: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,331 INFO L280 TraceCheckUtils]: 83: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,332 INFO L280 TraceCheckUtils]: 84: Hoare triple {57662#true} ~__retres1~0 := 0; {57662#true} is VALID [2020-07-10 20:29:00,332 INFO L280 TraceCheckUtils]: 85: Hoare triple {57662#true} #res := ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,332 INFO L280 TraceCheckUtils]: 86: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,333 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {57662#true} {57662#true} #343#return; {57662#true} is VALID [2020-07-10 20:29:00,333 INFO L280 TraceCheckUtils]: 88: Hoare triple {57662#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,333 INFO L280 TraceCheckUtils]: 89: Hoare triple {57662#true} ~tmp~0 := #t~ret0; {57662#true} is VALID [2020-07-10 20:29:00,333 INFO L280 TraceCheckUtils]: 90: Hoare triple {57662#true} havoc #t~ret0; {57662#true} is VALID [2020-07-10 20:29:00,334 INFO L280 TraceCheckUtils]: 91: Hoare triple {57662#true} assume !(0 != ~tmp~0); {57662#true} is VALID [2020-07-10 20:29:00,334 INFO L263 TraceCheckUtils]: 92: Hoare triple {57662#true} call #t~ret1 := is_do_read_c_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,334 INFO L280 TraceCheckUtils]: 93: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,335 INFO L280 TraceCheckUtils]: 94: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,335 INFO L280 TraceCheckUtils]: 95: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,335 INFO L280 TraceCheckUtils]: 96: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,335 INFO L280 TraceCheckUtils]: 97: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,336 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {57662#true} {57662#true} #345#return; {57662#true} is VALID [2020-07-10 20:29:00,336 INFO L280 TraceCheckUtils]: 99: Hoare triple {57662#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {57662#true} is VALID [2020-07-10 20:29:00,336 INFO L280 TraceCheckUtils]: 100: Hoare triple {57662#true} ~tmp___0~0 := #t~ret1; {57662#true} is VALID [2020-07-10 20:29:00,337 INFO L280 TraceCheckUtils]: 101: Hoare triple {57662#true} havoc #t~ret1; {57662#true} is VALID [2020-07-10 20:29:00,337 INFO L280 TraceCheckUtils]: 102: Hoare triple {57662#true} assume !(0 != ~tmp___0~0); {57662#true} is VALID [2020-07-10 20:29:00,337 INFO L280 TraceCheckUtils]: 103: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,338 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {57662#true} {57662#true} #341#return; {57662#true} is VALID [2020-07-10 20:29:00,338 INFO L280 TraceCheckUtils]: 105: Hoare triple {57662#true} ~q_write_ev~0 := 2; {57662#true} is VALID [2020-07-10 20:29:00,338 INFO L280 TraceCheckUtils]: 106: Hoare triple {57662#true} assume !false; {57662#true} is VALID [2020-07-10 20:29:00,338 INFO L280 TraceCheckUtils]: 107: Hoare triple {57662#true} assume 0 == ~q_free~0; {57662#true} is VALID [2020-07-10 20:29:00,339 INFO L280 TraceCheckUtils]: 108: Hoare triple {57662#true} ~p_dw_st~0 := 2; {57662#true} is VALID [2020-07-10 20:29:00,339 INFO L280 TraceCheckUtils]: 109: Hoare triple {57662#true} ~p_dw_pc~0 := 1; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,340 INFO L280 TraceCheckUtils]: 110: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume true; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,340 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {57748#(= 1 ~p_dw_pc~0)} {57662#true} #349#return; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,341 INFO L280 TraceCheckUtils]: 112: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume 0 == ~c_dr_st~0; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,342 INFO L280 TraceCheckUtils]: 113: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,342 INFO L280 TraceCheckUtils]: 114: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~tmp___0~1 := #t~nondet5; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,343 INFO L280 TraceCheckUtils]: 115: Hoare triple {57748#(= 1 ~p_dw_pc~0)} havoc #t~nondet5; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,343 INFO L280 TraceCheckUtils]: 116: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume 0 != ~tmp___0~1; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,344 INFO L280 TraceCheckUtils]: 117: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~c_dr_st~0 := 1; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,344 INFO L263 TraceCheckUtils]: 118: Hoare triple {57748#(= 1 ~p_dw_pc~0)} call do_read_c(); {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,345 INFO L280 TraceCheckUtils]: 119: Hoare triple {57748#(= 1 ~p_dw_pc~0)} havoc ~a~0; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,345 INFO L280 TraceCheckUtils]: 120: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume 0 == ~c_dr_pc~0; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,346 INFO L280 TraceCheckUtils]: 121: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume !false; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,346 INFO L280 TraceCheckUtils]: 122: Hoare triple {57748#(= 1 ~p_dw_pc~0)} assume !(1 == ~q_free~0); {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,347 INFO L280 TraceCheckUtils]: 123: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~a~0 := ~q_buf_0~0; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,348 INFO L280 TraceCheckUtils]: 124: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~c_last_read~0 := ~a~0; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,348 INFO L280 TraceCheckUtils]: 125: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~c_num_read~0 := 1 + ~c_num_read~0; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,349 INFO L280 TraceCheckUtils]: 126: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~q_free~0 := 1; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,349 INFO L280 TraceCheckUtils]: 127: Hoare triple {57748#(= 1 ~p_dw_pc~0)} ~q_read_ev~0 := 1; {57748#(= 1 ~p_dw_pc~0)} is VALID [2020-07-10 20:29:00,350 INFO L263 TraceCheckUtils]: 128: Hoare triple {57748#(= 1 ~p_dw_pc~0)} call immediate_notify_threads(); {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:00,350 INFO L280 TraceCheckUtils]: 129: Hoare triple {57777#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {57662#true} is VALID [2020-07-10 20:29:00,350 INFO L280 TraceCheckUtils]: 130: Hoare triple {57662#true} havoc ~tmp___0~0; {57662#true} is VALID [2020-07-10 20:29:00,350 INFO L263 TraceCheckUtils]: 131: Hoare triple {57662#true} call #t~ret0 := is_do_write_p_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,351 INFO L280 TraceCheckUtils]: 132: Hoare triple {57662#true} havoc ~__retres1~0; {57662#true} is VALID [2020-07-10 20:29:00,351 INFO L280 TraceCheckUtils]: 133: Hoare triple {57662#true} assume !(1 == ~p_dw_pc~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,352 INFO L280 TraceCheckUtils]: 134: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~__retres1~0 := 0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,352 INFO L280 TraceCheckUtils]: 135: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} #res := ~__retres1~0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,353 INFO L280 TraceCheckUtils]: 136: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume true; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,353 INFO L275 TraceCheckUtils]: 137: Hoare quadruple {57823#(not (= 1 ~p_dw_pc~0))} {57662#true} #343#return; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,354 INFO L280 TraceCheckUtils]: 138: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,354 INFO L280 TraceCheckUtils]: 139: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~tmp~0 := #t~ret0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,355 INFO L280 TraceCheckUtils]: 140: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} havoc #t~ret0; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,355 INFO L280 TraceCheckUtils]: 141: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume !(0 != ~tmp~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,356 INFO L263 TraceCheckUtils]: 142: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} call #t~ret1 := is_do_read_c_triggered(); {57662#true} is VALID [2020-07-10 20:29:00,356 INFO L280 TraceCheckUtils]: 143: Hoare triple {57662#true} havoc ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,356 INFO L280 TraceCheckUtils]: 144: Hoare triple {57662#true} assume !(1 == ~c_dr_pc~0); {57662#true} is VALID [2020-07-10 20:29:00,356 INFO L280 TraceCheckUtils]: 145: Hoare triple {57662#true} ~__retres1~1 := 0; {57662#true} is VALID [2020-07-10 20:29:00,356 INFO L280 TraceCheckUtils]: 146: Hoare triple {57662#true} #res := ~__retres1~1; {57662#true} is VALID [2020-07-10 20:29:00,357 INFO L280 TraceCheckUtils]: 147: Hoare triple {57662#true} assume true; {57662#true} is VALID [2020-07-10 20:29:00,357 INFO L275 TraceCheckUtils]: 148: Hoare quadruple {57662#true} {57823#(not (= 1 ~p_dw_pc~0))} #345#return; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,358 INFO L280 TraceCheckUtils]: 149: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,358 INFO L280 TraceCheckUtils]: 150: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} ~tmp___0~0 := #t~ret1; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,359 INFO L280 TraceCheckUtils]: 151: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} havoc #t~ret1; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,359 INFO L280 TraceCheckUtils]: 152: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume !(0 != ~tmp___0~0); {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,360 INFO L280 TraceCheckUtils]: 153: Hoare triple {57823#(not (= 1 ~p_dw_pc~0))} assume true; {57823#(not (= 1 ~p_dw_pc~0))} is VALID [2020-07-10 20:29:00,361 INFO L275 TraceCheckUtils]: 154: Hoare quadruple {57823#(not (= 1 ~p_dw_pc~0))} {57748#(= 1 ~p_dw_pc~0)} #365#return; {57663#false} is VALID [2020-07-10 20:29:00,361 INFO L280 TraceCheckUtils]: 155: Hoare triple {57663#false} ~q_read_ev~0 := 2; {57663#false} is VALID [2020-07-10 20:29:00,361 INFO L280 TraceCheckUtils]: 156: Hoare triple {57663#false} assume !(~p_last_write~0 == ~c_last_read~0); {57663#false} is VALID [2020-07-10 20:29:00,361 INFO L263 TraceCheckUtils]: 157: Hoare triple {57663#false} call error(); {57663#false} is VALID [2020-07-10 20:29:00,362 INFO L280 TraceCheckUtils]: 158: Hoare triple {57663#false} assume !false; {57663#false} is VALID [2020-07-10 20:29:00,391 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:29:00,391 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:29:00,392 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1992200303] [2020-07-10 20:29:00,393 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:29:00,393 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-10 20:29:00,393 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1094889759] [2020-07-10 20:29:00,394 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 159 [2020-07-10 20:29:00,395 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:29:00,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-10 20:29:00,532 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:29:00,532 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-10 20:29:00,533 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:29:00,533 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-10 20:29:00,533 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-10 20:29:00,533 INFO L87 Difference]: Start difference. First operand 3285 states and 5072 transitions. Second operand 8 states. [2020-07-10 20:29:26,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:29:26,826 INFO L93 Difference]: Finished difference Result 5584 states and 8949 transitions. [2020-07-10 20:29:26,827 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2020-07-10 20:29:26,827 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 159 [2020-07-10 20:29:26,827 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:29:26,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 20:29:26,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 621 transitions. [2020-07-10 20:29:26,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 20:29:26,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 621 transitions. [2020-07-10 20:29:26,836 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 621 transitions. [2020-07-10 20:29:27,724 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 621 edges. 621 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:29:27,982 INFO L225 Difference]: With dead ends: 5584 [2020-07-10 20:29:27,982 INFO L226 Difference]: Without dead ends: 2448 [2020-07-10 20:29:28,009 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=95, Invalid=247, Unknown=0, NotChecked=0, Total=342 [2020-07-10 20:29:28,012 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2448 states. [2020-07-10 20:29:45,416 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2448 to 2104. [2020-07-10 20:29:45,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:29:45,417 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2448 states. Second operand 2104 states. [2020-07-10 20:29:45,417 INFO L74 IsIncluded]: Start isIncluded. First operand 2448 states. Second operand 2104 states. [2020-07-10 20:29:45,417 INFO L87 Difference]: Start difference. First operand 2448 states. Second operand 2104 states. [2020-07-10 20:29:45,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:29:45,639 INFO L93 Difference]: Finished difference Result 2448 states and 3150 transitions. [2020-07-10 20:29:45,639 INFO L276 IsEmpty]: Start isEmpty. Operand 2448 states and 3150 transitions. [2020-07-10 20:29:45,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:29:45,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:29:45,647 INFO L74 IsIncluded]: Start isIncluded. First operand 2104 states. Second operand 2448 states. [2020-07-10 20:29:45,647 INFO L87 Difference]: Start difference. First operand 2104 states. Second operand 2448 states. [2020-07-10 20:29:45,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:29:45,868 INFO L93 Difference]: Finished difference Result 2448 states and 3150 transitions. [2020-07-10 20:29:45,868 INFO L276 IsEmpty]: Start isEmpty. Operand 2448 states and 3150 transitions. [2020-07-10 20:29:45,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:29:45,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:29:45,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:29:45,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:29:45,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2104 states. [2020-07-10 20:29:46,058 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2104 states to 2104 states and 2686 transitions. [2020-07-10 20:29:46,059 INFO L78 Accepts]: Start accepts. Automaton has 2104 states and 2686 transitions. Word has length 159 [2020-07-10 20:29:46,060 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:29:46,060 INFO L479 AbstractCegarLoop]: Abstraction has 2104 states and 2686 transitions. [2020-07-10 20:29:46,060 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-10 20:29:46,060 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2104 states and 2686 transitions. [2020-07-10 20:29:52,373 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 2686 edges. 2686 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:29:52,373 INFO L276 IsEmpty]: Start isEmpty. Operand 2104 states and 2686 transitions. [2020-07-10 20:29:52,376 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 161 [2020-07-10 20:29:52,376 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:29:52,377 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:29:52,377 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-10 20:29:52,377 INFO L427 AbstractCegarLoop]: === Iteration 7 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:29:52,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:29:52,378 INFO L82 PathProgramCache]: Analyzing trace with hash 136608560, now seen corresponding path program 1 times [2020-07-10 20:29:52,378 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:29:52,378 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [297533373] [2020-07-10 20:29:52,379 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:29:52,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,511 INFO L280 TraceCheckUtils]: 0: Hoare triple {78244#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,511 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} ~q_free~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,512 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~q_read_ev~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,512 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} ~q_write_ev~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,512 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} ~p_num_write~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,512 INFO L280 TraceCheckUtils]: 5: Hoare triple {78131#true} ~p_last_write~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,513 INFO L280 TraceCheckUtils]: 6: Hoare triple {78131#true} ~p_dw_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,513 INFO L280 TraceCheckUtils]: 7: Hoare triple {78131#true} ~p_dw_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,513 INFO L280 TraceCheckUtils]: 8: Hoare triple {78131#true} ~p_dw_i~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,513 INFO L280 TraceCheckUtils]: 9: Hoare triple {78131#true} ~c_num_read~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,513 INFO L280 TraceCheckUtils]: 10: Hoare triple {78131#true} ~c_last_read~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,513 INFO L280 TraceCheckUtils]: 11: Hoare triple {78131#true} ~c_dr_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,514 INFO L280 TraceCheckUtils]: 12: Hoare triple {78131#true} ~c_dr_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,514 INFO L280 TraceCheckUtils]: 13: Hoare triple {78131#true} ~c_dr_i~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,514 INFO L280 TraceCheckUtils]: 14: Hoare triple {78131#true} ~a_t~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,514 INFO L280 TraceCheckUtils]: 15: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,514 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {78131#true} {78131#true} #361#return; {78131#true} is VALID [2020-07-10 20:29:52,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,547 INFO L280 TraceCheckUtils]: 0: Hoare triple {78245#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,547 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} ~q_write_ev~0 := 2; {78131#true} is VALID [2020-07-10 20:29:52,548 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~q_read_ev~0 := ~q_write_ev~0; {78131#true} is VALID [2020-07-10 20:29:52,548 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} ~p_num_write~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,548 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} ~p_dw_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,548 INFO L280 TraceCheckUtils]: 5: Hoare triple {78131#true} ~p_dw_i~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,548 INFO L280 TraceCheckUtils]: 6: Hoare triple {78131#true} ~c_num_read~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,548 INFO L280 TraceCheckUtils]: 7: Hoare triple {78131#true} ~c_dr_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,549 INFO L280 TraceCheckUtils]: 8: Hoare triple {78131#true} ~c_dr_i~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,549 INFO L280 TraceCheckUtils]: 9: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,549 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {78131#true} {78131#true} #337#return; {78131#true} is VALID [2020-07-10 20:29:52,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,569 INFO L280 TraceCheckUtils]: 0: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {78131#true} is VALID [2020-07-10 20:29:52,570 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} ~p_dw_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,570 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} assume 1 == ~c_dr_i~0; {78131#true} is VALID [2020-07-10 20:29:52,570 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} ~c_dr_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,571 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,571 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {78131#true} {78131#true} #355#return; {78131#true} is VALID [2020-07-10 20:29:52,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,575 INFO L280 TraceCheckUtils]: 0: Hoare triple {78131#true} havoc ~__retres1~2; {78131#true} is VALID [2020-07-10 20:29:52,576 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} assume 0 == ~p_dw_st~0; {78131#true} is VALID [2020-07-10 20:29:52,576 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~__retres1~2 := 1; {78131#true} is VALID [2020-07-10 20:29:52,576 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} #res := ~__retres1~2; {78131#true} is VALID [2020-07-10 20:29:52,577 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,577 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {78131#true} {78131#true} #347#return; {78131#true} is VALID [2020-07-10 20:29:52,620 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,630 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,638 INFO L280 TraceCheckUtils]: 0: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,638 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} assume !(1 == ~p_dw_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,639 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~__retres1~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,639 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} #res := ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,639 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,639 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {78131#true} {78131#true} #343#return; {78131#true} is VALID [2020-07-10 20:29:52,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,643 INFO L280 TraceCheckUtils]: 0: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,644 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,644 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,644 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,645 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,645 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {78131#true} {78131#true} #345#return; {78131#true} is VALID [2020-07-10 20:29:52,646 INFO L280 TraceCheckUtils]: 0: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {78131#true} is VALID [2020-07-10 20:29:52,646 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} havoc ~tmp___0~0; {78131#true} is VALID [2020-07-10 20:29:52,646 INFO L263 TraceCheckUtils]: 2: Hoare triple {78131#true} call #t~ret0 := is_do_write_p_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,647 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,647 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume !(1 == ~p_dw_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,647 INFO L280 TraceCheckUtils]: 5: Hoare triple {78131#true} ~__retres1~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,648 INFO L280 TraceCheckUtils]: 6: Hoare triple {78131#true} #res := ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,648 INFO L280 TraceCheckUtils]: 7: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,649 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {78131#true} {78131#true} #343#return; {78131#true} is VALID [2020-07-10 20:29:52,649 INFO L280 TraceCheckUtils]: 9: Hoare triple {78131#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,649 INFO L280 TraceCheckUtils]: 10: Hoare triple {78131#true} ~tmp~0 := #t~ret0; {78131#true} is VALID [2020-07-10 20:29:52,650 INFO L280 TraceCheckUtils]: 11: Hoare triple {78131#true} havoc #t~ret0; {78131#true} is VALID [2020-07-10 20:29:52,650 INFO L280 TraceCheckUtils]: 12: Hoare triple {78131#true} assume !(0 != ~tmp~0); {78131#true} is VALID [2020-07-10 20:29:52,650 INFO L263 TraceCheckUtils]: 13: Hoare triple {78131#true} call #t~ret1 := is_do_read_c_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,651 INFO L280 TraceCheckUtils]: 14: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,651 INFO L280 TraceCheckUtils]: 15: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,651 INFO L280 TraceCheckUtils]: 16: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,652 INFO L280 TraceCheckUtils]: 17: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,652 INFO L280 TraceCheckUtils]: 18: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,652 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {78131#true} {78131#true} #345#return; {78131#true} is VALID [2020-07-10 20:29:52,653 INFO L280 TraceCheckUtils]: 20: Hoare triple {78131#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,653 INFO L280 TraceCheckUtils]: 21: Hoare triple {78131#true} ~tmp___0~0 := #t~ret1; {78131#true} is VALID [2020-07-10 20:29:52,653 INFO L280 TraceCheckUtils]: 22: Hoare triple {78131#true} havoc #t~ret1; {78131#true} is VALID [2020-07-10 20:29:52,654 INFO L280 TraceCheckUtils]: 23: Hoare triple {78131#true} assume !(0 != ~tmp___0~0); {78131#true} is VALID [2020-07-10 20:29:52,654 INFO L280 TraceCheckUtils]: 24: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,655 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {78131#true} {78131#true} #341#return; {78131#true} is VALID [2020-07-10 20:29:52,656 INFO L280 TraceCheckUtils]: 0: Hoare triple {78247#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {78131#true} is VALID [2020-07-10 20:29:52,656 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,656 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} assume !(0 == ~q_free~0); {78131#true} is VALID [2020-07-10 20:29:52,657 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,657 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} ~q_buf_0~0 := #t~nondet2; {78131#true} is VALID [2020-07-10 20:29:52,657 INFO L280 TraceCheckUtils]: 5: Hoare triple {78131#true} havoc #t~nondet2; {78131#true} is VALID [2020-07-10 20:29:52,658 INFO L280 TraceCheckUtils]: 6: Hoare triple {78131#true} ~p_last_write~0 := ~q_buf_0~0; {78131#true} is VALID [2020-07-10 20:29:52,658 INFO L280 TraceCheckUtils]: 7: Hoare triple {78131#true} ~p_num_write~0 := 1 + ~p_num_write~0; {78131#true} is VALID [2020-07-10 20:29:52,658 INFO L280 TraceCheckUtils]: 8: Hoare triple {78131#true} ~q_free~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,659 INFO L280 TraceCheckUtils]: 9: Hoare triple {78131#true} ~q_write_ev~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,660 INFO L263 TraceCheckUtils]: 10: Hoare triple {78131#true} call immediate_notify_threads(); {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:52,660 INFO L280 TraceCheckUtils]: 11: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {78131#true} is VALID [2020-07-10 20:29:52,661 INFO L280 TraceCheckUtils]: 12: Hoare triple {78131#true} havoc ~tmp___0~0; {78131#true} is VALID [2020-07-10 20:29:52,661 INFO L263 TraceCheckUtils]: 13: Hoare triple {78131#true} call #t~ret0 := is_do_write_p_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,661 INFO L280 TraceCheckUtils]: 14: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,662 INFO L280 TraceCheckUtils]: 15: Hoare triple {78131#true} assume !(1 == ~p_dw_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,662 INFO L280 TraceCheckUtils]: 16: Hoare triple {78131#true} ~__retres1~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,662 INFO L280 TraceCheckUtils]: 17: Hoare triple {78131#true} #res := ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,663 INFO L280 TraceCheckUtils]: 18: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,663 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {78131#true} {78131#true} #343#return; {78131#true} is VALID [2020-07-10 20:29:52,663 INFO L280 TraceCheckUtils]: 20: Hoare triple {78131#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,664 INFO L280 TraceCheckUtils]: 21: Hoare triple {78131#true} ~tmp~0 := #t~ret0; {78131#true} is VALID [2020-07-10 20:29:52,664 INFO L280 TraceCheckUtils]: 22: Hoare triple {78131#true} havoc #t~ret0; {78131#true} is VALID [2020-07-10 20:29:52,664 INFO L280 TraceCheckUtils]: 23: Hoare triple {78131#true} assume !(0 != ~tmp~0); {78131#true} is VALID [2020-07-10 20:29:52,665 INFO L263 TraceCheckUtils]: 24: Hoare triple {78131#true} call #t~ret1 := is_do_read_c_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,665 INFO L280 TraceCheckUtils]: 25: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,665 INFO L280 TraceCheckUtils]: 26: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,666 INFO L280 TraceCheckUtils]: 27: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,666 INFO L280 TraceCheckUtils]: 28: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,666 INFO L280 TraceCheckUtils]: 29: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,667 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {78131#true} {78131#true} #345#return; {78131#true} is VALID [2020-07-10 20:29:52,667 INFO L280 TraceCheckUtils]: 31: Hoare triple {78131#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,667 INFO L280 TraceCheckUtils]: 32: Hoare triple {78131#true} ~tmp___0~0 := #t~ret1; {78131#true} is VALID [2020-07-10 20:29:52,668 INFO L280 TraceCheckUtils]: 33: Hoare triple {78131#true} havoc #t~ret1; {78131#true} is VALID [2020-07-10 20:29:52,668 INFO L280 TraceCheckUtils]: 34: Hoare triple {78131#true} assume !(0 != ~tmp___0~0); {78131#true} is VALID [2020-07-10 20:29:52,669 INFO L280 TraceCheckUtils]: 35: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,669 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {78131#true} {78131#true} #341#return; {78131#true} is VALID [2020-07-10 20:29:52,669 INFO L280 TraceCheckUtils]: 37: Hoare triple {78131#true} ~q_write_ev~0 := 2; {78131#true} is VALID [2020-07-10 20:29:52,669 INFO L280 TraceCheckUtils]: 38: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,670 INFO L280 TraceCheckUtils]: 39: Hoare triple {78131#true} assume 0 == ~q_free~0; {78131#true} is VALID [2020-07-10 20:29:52,670 INFO L280 TraceCheckUtils]: 40: Hoare triple {78131#true} ~p_dw_st~0 := 2; {78131#true} is VALID [2020-07-10 20:29:52,671 INFO L280 TraceCheckUtils]: 41: Hoare triple {78131#true} ~p_dw_pc~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,671 INFO L280 TraceCheckUtils]: 42: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,671 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {78131#true} {78131#true} #349#return; {78131#true} is VALID [2020-07-10 20:29:52,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,742 INFO L280 TraceCheckUtils]: 0: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,742 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} assume 1 == ~p_dw_pc~0; {78131#true} is VALID [2020-07-10 20:29:52,742 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} assume 1 == ~q_read_ev~0; {78131#true} is VALID [2020-07-10 20:29:52,743 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} ~__retres1~0 := 1; {78301#(<= 1 is_do_write_p_triggered_~__retres1~0)} is VALID [2020-07-10 20:29:52,744 INFO L280 TraceCheckUtils]: 4: Hoare triple {78301#(<= 1 is_do_write_p_triggered_~__retres1~0)} #res := ~__retres1~0; {78302#(<= 1 |is_do_write_p_triggered_#res|)} is VALID [2020-07-10 20:29:52,744 INFO L280 TraceCheckUtils]: 5: Hoare triple {78302#(<= 1 |is_do_write_p_triggered_#res|)} assume true; {78302#(<= 1 |is_do_write_p_triggered_#res|)} is VALID [2020-07-10 20:29:52,745 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {78302#(<= 1 |is_do_write_p_triggered_#res|)} {78131#true} #343#return; {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} is VALID [2020-07-10 20:29:52,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:29:52,749 INFO L280 TraceCheckUtils]: 0: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,750 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,750 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,751 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,751 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,751 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {78131#true} {78132#false} #345#return; {78132#false} is VALID [2020-07-10 20:29:52,752 INFO L280 TraceCheckUtils]: 0: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {78131#true} is VALID [2020-07-10 20:29:52,752 INFO L280 TraceCheckUtils]: 1: Hoare triple {78131#true} havoc ~tmp___0~0; {78131#true} is VALID [2020-07-10 20:29:52,752 INFO L263 TraceCheckUtils]: 2: Hoare triple {78131#true} call #t~ret0 := is_do_write_p_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,753 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,753 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} assume 1 == ~p_dw_pc~0; {78131#true} is VALID [2020-07-10 20:29:52,754 INFO L280 TraceCheckUtils]: 5: Hoare triple {78131#true} assume 1 == ~q_read_ev~0; {78131#true} is VALID [2020-07-10 20:29:52,755 INFO L280 TraceCheckUtils]: 6: Hoare triple {78131#true} ~__retres1~0 := 1; {78301#(<= 1 is_do_write_p_triggered_~__retres1~0)} is VALID [2020-07-10 20:29:52,756 INFO L280 TraceCheckUtils]: 7: Hoare triple {78301#(<= 1 is_do_write_p_triggered_~__retres1~0)} #res := ~__retres1~0; {78302#(<= 1 |is_do_write_p_triggered_#res|)} is VALID [2020-07-10 20:29:52,757 INFO L280 TraceCheckUtils]: 8: Hoare triple {78302#(<= 1 |is_do_write_p_triggered_#res|)} assume true; {78302#(<= 1 |is_do_write_p_triggered_#res|)} is VALID [2020-07-10 20:29:52,758 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {78302#(<= 1 |is_do_write_p_triggered_#res|)} {78131#true} #343#return; {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} is VALID [2020-07-10 20:29:52,759 INFO L280 TraceCheckUtils]: 10: Hoare triple {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} is VALID [2020-07-10 20:29:52,760 INFO L280 TraceCheckUtils]: 11: Hoare triple {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} ~tmp~0 := #t~ret0; {78294#(<= 1 immediate_notify_threads_~tmp~0)} is VALID [2020-07-10 20:29:52,761 INFO L280 TraceCheckUtils]: 12: Hoare triple {78294#(<= 1 immediate_notify_threads_~tmp~0)} havoc #t~ret0; {78294#(<= 1 immediate_notify_threads_~tmp~0)} is VALID [2020-07-10 20:29:52,762 INFO L280 TraceCheckUtils]: 13: Hoare triple {78294#(<= 1 immediate_notify_threads_~tmp~0)} assume !(0 != ~tmp~0); {78132#false} is VALID [2020-07-10 20:29:52,762 INFO L263 TraceCheckUtils]: 14: Hoare triple {78132#false} call #t~ret1 := is_do_read_c_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,762 INFO L280 TraceCheckUtils]: 15: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,763 INFO L280 TraceCheckUtils]: 16: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,763 INFO L280 TraceCheckUtils]: 17: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,763 INFO L280 TraceCheckUtils]: 18: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,764 INFO L280 TraceCheckUtils]: 19: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,764 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {78131#true} {78132#false} #345#return; {78132#false} is VALID [2020-07-10 20:29:52,764 INFO L280 TraceCheckUtils]: 21: Hoare triple {78132#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {78132#false} is VALID [2020-07-10 20:29:52,765 INFO L280 TraceCheckUtils]: 22: Hoare triple {78132#false} ~tmp___0~0 := #t~ret1; {78132#false} is VALID [2020-07-10 20:29:52,765 INFO L280 TraceCheckUtils]: 23: Hoare triple {78132#false} havoc #t~ret1; {78132#false} is VALID [2020-07-10 20:29:52,765 INFO L280 TraceCheckUtils]: 24: Hoare triple {78132#false} assume !(0 != ~tmp___0~0); {78132#false} is VALID [2020-07-10 20:29:52,766 INFO L280 TraceCheckUtils]: 25: Hoare triple {78132#false} assume true; {78132#false} is VALID [2020-07-10 20:29:52,766 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {78132#false} {78131#true} #365#return; {78132#false} is VALID [2020-07-10 20:29:52,770 INFO L263 TraceCheckUtils]: 0: Hoare triple {78131#true} call ULTIMATE.init(); {78244#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:29:52,770 INFO L280 TraceCheckUtils]: 1: Hoare triple {78244#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,770 INFO L280 TraceCheckUtils]: 2: Hoare triple {78131#true} ~q_free~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,771 INFO L280 TraceCheckUtils]: 3: Hoare triple {78131#true} ~q_read_ev~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,771 INFO L280 TraceCheckUtils]: 4: Hoare triple {78131#true} ~q_write_ev~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,771 INFO L280 TraceCheckUtils]: 5: Hoare triple {78131#true} ~p_num_write~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,772 INFO L280 TraceCheckUtils]: 6: Hoare triple {78131#true} ~p_last_write~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,772 INFO L280 TraceCheckUtils]: 7: Hoare triple {78131#true} ~p_dw_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,772 INFO L280 TraceCheckUtils]: 8: Hoare triple {78131#true} ~p_dw_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,773 INFO L280 TraceCheckUtils]: 9: Hoare triple {78131#true} ~p_dw_i~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,773 INFO L280 TraceCheckUtils]: 10: Hoare triple {78131#true} ~c_num_read~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,773 INFO L280 TraceCheckUtils]: 11: Hoare triple {78131#true} ~c_last_read~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,774 INFO L280 TraceCheckUtils]: 12: Hoare triple {78131#true} ~c_dr_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,774 INFO L280 TraceCheckUtils]: 13: Hoare triple {78131#true} ~c_dr_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,774 INFO L280 TraceCheckUtils]: 14: Hoare triple {78131#true} ~c_dr_i~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,774 INFO L280 TraceCheckUtils]: 15: Hoare triple {78131#true} ~a_t~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,775 INFO L280 TraceCheckUtils]: 16: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,775 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {78131#true} {78131#true} #361#return; {78131#true} is VALID [2020-07-10 20:29:52,775 INFO L263 TraceCheckUtils]: 18: Hoare triple {78131#true} call #t~ret8 := main(); {78131#true} is VALID [2020-07-10 20:29:52,776 INFO L280 TraceCheckUtils]: 19: Hoare triple {78131#true} havoc ~__retres1~3; {78131#true} is VALID [2020-07-10 20:29:52,778 INFO L263 TraceCheckUtils]: 20: Hoare triple {78131#true} call init_model(); {78245#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:29:52,778 INFO L280 TraceCheckUtils]: 21: Hoare triple {78245#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,778 INFO L280 TraceCheckUtils]: 22: Hoare triple {78131#true} ~q_write_ev~0 := 2; {78131#true} is VALID [2020-07-10 20:29:52,779 INFO L280 TraceCheckUtils]: 23: Hoare triple {78131#true} ~q_read_ev~0 := ~q_write_ev~0; {78131#true} is VALID [2020-07-10 20:29:52,779 INFO L280 TraceCheckUtils]: 24: Hoare triple {78131#true} ~p_num_write~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,779 INFO L280 TraceCheckUtils]: 25: Hoare triple {78131#true} ~p_dw_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,780 INFO L280 TraceCheckUtils]: 26: Hoare triple {78131#true} ~p_dw_i~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,780 INFO L280 TraceCheckUtils]: 27: Hoare triple {78131#true} ~c_num_read~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,780 INFO L280 TraceCheckUtils]: 28: Hoare triple {78131#true} ~c_dr_pc~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,781 INFO L280 TraceCheckUtils]: 29: Hoare triple {78131#true} ~c_dr_i~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,781 INFO L280 TraceCheckUtils]: 30: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,781 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {78131#true} {78131#true} #337#return; {78131#true} is VALID [2020-07-10 20:29:52,782 INFO L263 TraceCheckUtils]: 32: Hoare triple {78131#true} call start_simulation(); {78131#true} is VALID [2020-07-10 20:29:52,782 INFO L280 TraceCheckUtils]: 33: Hoare triple {78131#true} havoc ~kernel_st~0; {78131#true} is VALID [2020-07-10 20:29:52,782 INFO L280 TraceCheckUtils]: 34: Hoare triple {78131#true} havoc ~tmp~3; {78131#true} is VALID [2020-07-10 20:29:52,783 INFO L280 TraceCheckUtils]: 35: Hoare triple {78131#true} ~kernel_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,784 INFO L263 TraceCheckUtils]: 36: Hoare triple {78131#true} call init_threads(); {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:52,784 INFO L280 TraceCheckUtils]: 37: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {78131#true} is VALID [2020-07-10 20:29:52,784 INFO L280 TraceCheckUtils]: 38: Hoare triple {78131#true} ~p_dw_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,785 INFO L280 TraceCheckUtils]: 39: Hoare triple {78131#true} assume 1 == ~c_dr_i~0; {78131#true} is VALID [2020-07-10 20:29:52,785 INFO L280 TraceCheckUtils]: 40: Hoare triple {78131#true} ~c_dr_st~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,785 INFO L280 TraceCheckUtils]: 41: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,786 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {78131#true} {78131#true} #355#return; {78131#true} is VALID [2020-07-10 20:29:52,786 INFO L280 TraceCheckUtils]: 43: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,786 INFO L280 TraceCheckUtils]: 44: Hoare triple {78131#true} ~kernel_st~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,787 INFO L263 TraceCheckUtils]: 45: Hoare triple {78131#true} call eval(); {78131#true} is VALID [2020-07-10 20:29:52,787 INFO L280 TraceCheckUtils]: 46: Hoare triple {78131#true} havoc ~tmp~1; {78131#true} is VALID [2020-07-10 20:29:52,787 INFO L280 TraceCheckUtils]: 47: Hoare triple {78131#true} havoc ~tmp___0~1; {78131#true} is VALID [2020-07-10 20:29:52,788 INFO L280 TraceCheckUtils]: 48: Hoare triple {78131#true} havoc ~tmp___1~0; {78131#true} is VALID [2020-07-10 20:29:52,788 INFO L280 TraceCheckUtils]: 49: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,788 INFO L263 TraceCheckUtils]: 50: Hoare triple {78131#true} call #t~ret3 := exists_runnable_thread(); {78131#true} is VALID [2020-07-10 20:29:52,789 INFO L280 TraceCheckUtils]: 51: Hoare triple {78131#true} havoc ~__retres1~2; {78131#true} is VALID [2020-07-10 20:29:52,789 INFO L280 TraceCheckUtils]: 52: Hoare triple {78131#true} assume 0 == ~p_dw_st~0; {78131#true} is VALID [2020-07-10 20:29:52,789 INFO L280 TraceCheckUtils]: 53: Hoare triple {78131#true} ~__retres1~2 := 1; {78131#true} is VALID [2020-07-10 20:29:52,790 INFO L280 TraceCheckUtils]: 54: Hoare triple {78131#true} #res := ~__retres1~2; {78131#true} is VALID [2020-07-10 20:29:52,790 INFO L280 TraceCheckUtils]: 55: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,790 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {78131#true} {78131#true} #347#return; {78131#true} is VALID [2020-07-10 20:29:52,791 INFO L280 TraceCheckUtils]: 57: Hoare triple {78131#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,791 INFO L280 TraceCheckUtils]: 58: Hoare triple {78131#true} ~tmp___1~0 := #t~ret3; {78131#true} is VALID [2020-07-10 20:29:52,791 INFO L280 TraceCheckUtils]: 59: Hoare triple {78131#true} havoc #t~ret3; {78131#true} is VALID [2020-07-10 20:29:52,791 INFO L280 TraceCheckUtils]: 60: Hoare triple {78131#true} assume 0 != ~tmp___1~0; {78131#true} is VALID [2020-07-10 20:29:52,792 INFO L280 TraceCheckUtils]: 61: Hoare triple {78131#true} assume 0 == ~p_dw_st~0; {78131#true} is VALID [2020-07-10 20:29:52,792 INFO L280 TraceCheckUtils]: 62: Hoare triple {78131#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,792 INFO L280 TraceCheckUtils]: 63: Hoare triple {78131#true} ~tmp~1 := #t~nondet4; {78131#true} is VALID [2020-07-10 20:29:52,793 INFO L280 TraceCheckUtils]: 64: Hoare triple {78131#true} havoc #t~nondet4; {78131#true} is VALID [2020-07-10 20:29:52,793 INFO L280 TraceCheckUtils]: 65: Hoare triple {78131#true} assume 0 != ~tmp~1; {78131#true} is VALID [2020-07-10 20:29:52,793 INFO L280 TraceCheckUtils]: 66: Hoare triple {78131#true} ~p_dw_st~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,795 INFO L263 TraceCheckUtils]: 67: Hoare triple {78131#true} call do_write_p(); {78247#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:29:52,795 INFO L280 TraceCheckUtils]: 68: Hoare triple {78247#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {78131#true} is VALID [2020-07-10 20:29:52,795 INFO L280 TraceCheckUtils]: 69: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,796 INFO L280 TraceCheckUtils]: 70: Hoare triple {78131#true} assume !(0 == ~q_free~0); {78131#true} is VALID [2020-07-10 20:29:52,796 INFO L280 TraceCheckUtils]: 71: Hoare triple {78131#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,796 INFO L280 TraceCheckUtils]: 72: Hoare triple {78131#true} ~q_buf_0~0 := #t~nondet2; {78131#true} is VALID [2020-07-10 20:29:52,796 INFO L280 TraceCheckUtils]: 73: Hoare triple {78131#true} havoc #t~nondet2; {78131#true} is VALID [2020-07-10 20:29:52,797 INFO L280 TraceCheckUtils]: 74: Hoare triple {78131#true} ~p_last_write~0 := ~q_buf_0~0; {78131#true} is VALID [2020-07-10 20:29:52,797 INFO L280 TraceCheckUtils]: 75: Hoare triple {78131#true} ~p_num_write~0 := 1 + ~p_num_write~0; {78131#true} is VALID [2020-07-10 20:29:52,797 INFO L280 TraceCheckUtils]: 76: Hoare triple {78131#true} ~q_free~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,798 INFO L280 TraceCheckUtils]: 77: Hoare triple {78131#true} ~q_write_ev~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,799 INFO L263 TraceCheckUtils]: 78: Hoare triple {78131#true} call immediate_notify_threads(); {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:52,799 INFO L280 TraceCheckUtils]: 79: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {78131#true} is VALID [2020-07-10 20:29:52,799 INFO L280 TraceCheckUtils]: 80: Hoare triple {78131#true} havoc ~tmp___0~0; {78131#true} is VALID [2020-07-10 20:29:52,800 INFO L263 TraceCheckUtils]: 81: Hoare triple {78131#true} call #t~ret0 := is_do_write_p_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,800 INFO L280 TraceCheckUtils]: 82: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,800 INFO L280 TraceCheckUtils]: 83: Hoare triple {78131#true} assume !(1 == ~p_dw_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,801 INFO L280 TraceCheckUtils]: 84: Hoare triple {78131#true} ~__retres1~0 := 0; {78131#true} is VALID [2020-07-10 20:29:52,801 INFO L280 TraceCheckUtils]: 85: Hoare triple {78131#true} #res := ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,801 INFO L280 TraceCheckUtils]: 86: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,802 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {78131#true} {78131#true} #343#return; {78131#true} is VALID [2020-07-10 20:29:52,802 INFO L280 TraceCheckUtils]: 88: Hoare triple {78131#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,802 INFO L280 TraceCheckUtils]: 89: Hoare triple {78131#true} ~tmp~0 := #t~ret0; {78131#true} is VALID [2020-07-10 20:29:52,803 INFO L280 TraceCheckUtils]: 90: Hoare triple {78131#true} havoc #t~ret0; {78131#true} is VALID [2020-07-10 20:29:52,803 INFO L280 TraceCheckUtils]: 91: Hoare triple {78131#true} assume !(0 != ~tmp~0); {78131#true} is VALID [2020-07-10 20:29:52,803 INFO L263 TraceCheckUtils]: 92: Hoare triple {78131#true} call #t~ret1 := is_do_read_c_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,804 INFO L280 TraceCheckUtils]: 93: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,804 INFO L280 TraceCheckUtils]: 94: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,804 INFO L280 TraceCheckUtils]: 95: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,805 INFO L280 TraceCheckUtils]: 96: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,805 INFO L280 TraceCheckUtils]: 97: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,805 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {78131#true} {78131#true} #345#return; {78131#true} is VALID [2020-07-10 20:29:52,806 INFO L280 TraceCheckUtils]: 99: Hoare triple {78131#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,806 INFO L280 TraceCheckUtils]: 100: Hoare triple {78131#true} ~tmp___0~0 := #t~ret1; {78131#true} is VALID [2020-07-10 20:29:52,806 INFO L280 TraceCheckUtils]: 101: Hoare triple {78131#true} havoc #t~ret1; {78131#true} is VALID [2020-07-10 20:29:52,807 INFO L280 TraceCheckUtils]: 102: Hoare triple {78131#true} assume !(0 != ~tmp___0~0); {78131#true} is VALID [2020-07-10 20:29:52,807 INFO L280 TraceCheckUtils]: 103: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,807 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {78131#true} {78131#true} #341#return; {78131#true} is VALID [2020-07-10 20:29:52,808 INFO L280 TraceCheckUtils]: 105: Hoare triple {78131#true} ~q_write_ev~0 := 2; {78131#true} is VALID [2020-07-10 20:29:52,808 INFO L280 TraceCheckUtils]: 106: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,808 INFO L280 TraceCheckUtils]: 107: Hoare triple {78131#true} assume 0 == ~q_free~0; {78131#true} is VALID [2020-07-10 20:29:52,808 INFO L280 TraceCheckUtils]: 108: Hoare triple {78131#true} ~p_dw_st~0 := 2; {78131#true} is VALID [2020-07-10 20:29:52,809 INFO L280 TraceCheckUtils]: 109: Hoare triple {78131#true} ~p_dw_pc~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,809 INFO L280 TraceCheckUtils]: 110: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,809 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {78131#true} {78131#true} #349#return; {78131#true} is VALID [2020-07-10 20:29:52,810 INFO L280 TraceCheckUtils]: 112: Hoare triple {78131#true} assume 0 == ~c_dr_st~0; {78131#true} is VALID [2020-07-10 20:29:52,810 INFO L280 TraceCheckUtils]: 113: Hoare triple {78131#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {78131#true} is VALID [2020-07-10 20:29:52,810 INFO L280 TraceCheckUtils]: 114: Hoare triple {78131#true} ~tmp___0~1 := #t~nondet5; {78131#true} is VALID [2020-07-10 20:29:52,811 INFO L280 TraceCheckUtils]: 115: Hoare triple {78131#true} havoc #t~nondet5; {78131#true} is VALID [2020-07-10 20:29:52,811 INFO L280 TraceCheckUtils]: 116: Hoare triple {78131#true} assume 0 != ~tmp___0~1; {78131#true} is VALID [2020-07-10 20:29:52,811 INFO L280 TraceCheckUtils]: 117: Hoare triple {78131#true} ~c_dr_st~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,812 INFO L263 TraceCheckUtils]: 118: Hoare triple {78131#true} call do_read_c(); {78131#true} is VALID [2020-07-10 20:29:52,812 INFO L280 TraceCheckUtils]: 119: Hoare triple {78131#true} havoc ~a~0; {78131#true} is VALID [2020-07-10 20:29:52,812 INFO L280 TraceCheckUtils]: 120: Hoare triple {78131#true} assume 0 == ~c_dr_pc~0; {78131#true} is VALID [2020-07-10 20:29:52,813 INFO L280 TraceCheckUtils]: 121: Hoare triple {78131#true} assume !false; {78131#true} is VALID [2020-07-10 20:29:52,813 INFO L280 TraceCheckUtils]: 122: Hoare triple {78131#true} assume !(1 == ~q_free~0); {78131#true} is VALID [2020-07-10 20:29:52,813 INFO L280 TraceCheckUtils]: 123: Hoare triple {78131#true} ~a~0 := ~q_buf_0~0; {78131#true} is VALID [2020-07-10 20:29:52,813 INFO L280 TraceCheckUtils]: 124: Hoare triple {78131#true} ~c_last_read~0 := ~a~0; {78131#true} is VALID [2020-07-10 20:29:52,814 INFO L280 TraceCheckUtils]: 125: Hoare triple {78131#true} ~c_num_read~0 := 1 + ~c_num_read~0; {78131#true} is VALID [2020-07-10 20:29:52,814 INFO L280 TraceCheckUtils]: 126: Hoare triple {78131#true} ~q_free~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,814 INFO L280 TraceCheckUtils]: 127: Hoare triple {78131#true} ~q_read_ev~0 := 1; {78131#true} is VALID [2020-07-10 20:29:52,815 INFO L263 TraceCheckUtils]: 128: Hoare triple {78131#true} call immediate_notify_threads(); {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:29:52,815 INFO L280 TraceCheckUtils]: 129: Hoare triple {78246#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {78131#true} is VALID [2020-07-10 20:29:52,816 INFO L280 TraceCheckUtils]: 130: Hoare triple {78131#true} havoc ~tmp___0~0; {78131#true} is VALID [2020-07-10 20:29:52,816 INFO L263 TraceCheckUtils]: 131: Hoare triple {78131#true} call #t~ret0 := is_do_write_p_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,816 INFO L280 TraceCheckUtils]: 132: Hoare triple {78131#true} havoc ~__retres1~0; {78131#true} is VALID [2020-07-10 20:29:52,817 INFO L280 TraceCheckUtils]: 133: Hoare triple {78131#true} assume 1 == ~p_dw_pc~0; {78131#true} is VALID [2020-07-10 20:29:52,817 INFO L280 TraceCheckUtils]: 134: Hoare triple {78131#true} assume 1 == ~q_read_ev~0; {78131#true} is VALID [2020-07-10 20:29:52,818 INFO L280 TraceCheckUtils]: 135: Hoare triple {78131#true} ~__retres1~0 := 1; {78301#(<= 1 is_do_write_p_triggered_~__retres1~0)} is VALID [2020-07-10 20:29:52,819 INFO L280 TraceCheckUtils]: 136: Hoare triple {78301#(<= 1 is_do_write_p_triggered_~__retres1~0)} #res := ~__retres1~0; {78302#(<= 1 |is_do_write_p_triggered_#res|)} is VALID [2020-07-10 20:29:52,820 INFO L280 TraceCheckUtils]: 137: Hoare triple {78302#(<= 1 |is_do_write_p_triggered_#res|)} assume true; {78302#(<= 1 |is_do_write_p_triggered_#res|)} is VALID [2020-07-10 20:29:52,821 INFO L275 TraceCheckUtils]: 138: Hoare quadruple {78302#(<= 1 |is_do_write_p_triggered_#res|)} {78131#true} #343#return; {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} is VALID [2020-07-10 20:29:52,822 INFO L280 TraceCheckUtils]: 139: Hoare triple {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} is VALID [2020-07-10 20:29:52,823 INFO L280 TraceCheckUtils]: 140: Hoare triple {78293#(<= 1 |immediate_notify_threads_#t~ret0|)} ~tmp~0 := #t~ret0; {78294#(<= 1 immediate_notify_threads_~tmp~0)} is VALID [2020-07-10 20:29:52,824 INFO L280 TraceCheckUtils]: 141: Hoare triple {78294#(<= 1 immediate_notify_threads_~tmp~0)} havoc #t~ret0; {78294#(<= 1 immediate_notify_threads_~tmp~0)} is VALID [2020-07-10 20:29:52,825 INFO L280 TraceCheckUtils]: 142: Hoare triple {78294#(<= 1 immediate_notify_threads_~tmp~0)} assume !(0 != ~tmp~0); {78132#false} is VALID [2020-07-10 20:29:52,825 INFO L263 TraceCheckUtils]: 143: Hoare triple {78132#false} call #t~ret1 := is_do_read_c_triggered(); {78131#true} is VALID [2020-07-10 20:29:52,825 INFO L280 TraceCheckUtils]: 144: Hoare triple {78131#true} havoc ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,826 INFO L280 TraceCheckUtils]: 145: Hoare triple {78131#true} assume !(1 == ~c_dr_pc~0); {78131#true} is VALID [2020-07-10 20:29:52,826 INFO L280 TraceCheckUtils]: 146: Hoare triple {78131#true} ~__retres1~1 := 0; {78131#true} is VALID [2020-07-10 20:29:52,826 INFO L280 TraceCheckUtils]: 147: Hoare triple {78131#true} #res := ~__retres1~1; {78131#true} is VALID [2020-07-10 20:29:52,827 INFO L280 TraceCheckUtils]: 148: Hoare triple {78131#true} assume true; {78131#true} is VALID [2020-07-10 20:29:52,827 INFO L275 TraceCheckUtils]: 149: Hoare quadruple {78131#true} {78132#false} #345#return; {78132#false} is VALID [2020-07-10 20:29:52,827 INFO L280 TraceCheckUtils]: 150: Hoare triple {78132#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {78132#false} is VALID [2020-07-10 20:29:52,828 INFO L280 TraceCheckUtils]: 151: Hoare triple {78132#false} ~tmp___0~0 := #t~ret1; {78132#false} is VALID [2020-07-10 20:29:52,828 INFO L280 TraceCheckUtils]: 152: Hoare triple {78132#false} havoc #t~ret1; {78132#false} is VALID [2020-07-10 20:29:52,828 INFO L280 TraceCheckUtils]: 153: Hoare triple {78132#false} assume !(0 != ~tmp___0~0); {78132#false} is VALID [2020-07-10 20:29:52,829 INFO L280 TraceCheckUtils]: 154: Hoare triple {78132#false} assume true; {78132#false} is VALID [2020-07-10 20:29:52,829 INFO L275 TraceCheckUtils]: 155: Hoare quadruple {78132#false} {78131#true} #365#return; {78132#false} is VALID [2020-07-10 20:29:52,829 INFO L280 TraceCheckUtils]: 156: Hoare triple {78132#false} ~q_read_ev~0 := 2; {78132#false} is VALID [2020-07-10 20:29:52,830 INFO L280 TraceCheckUtils]: 157: Hoare triple {78132#false} assume !(~p_last_write~0 == ~c_last_read~0); {78132#false} is VALID [2020-07-10 20:29:52,830 INFO L263 TraceCheckUtils]: 158: Hoare triple {78132#false} call error(); {78132#false} is VALID [2020-07-10 20:29:52,830 INFO L280 TraceCheckUtils]: 159: Hoare triple {78132#false} assume !false; {78132#false} is VALID [2020-07-10 20:29:52,865 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:29:52,865 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:29:52,866 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [297533373] [2020-07-10 20:29:52,866 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:29:52,866 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-10 20:29:52,866 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1420514304] [2020-07-10 20:29:52,867 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 160 [2020-07-10 20:29:52,867 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:29:52,867 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-10 20:29:53,064 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:29:53,064 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-10 20:29:53,064 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:29:53,065 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-10 20:29:53,065 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2020-07-10 20:29:53,065 INFO L87 Difference]: Start difference. First operand 2104 states and 2686 transitions. Second operand 10 states. [2020-07-10 20:30:19,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:30:19,895 INFO L93 Difference]: Finished difference Result 4243 states and 5814 transitions. [2020-07-10 20:30:19,895 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-10 20:30:19,895 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 160 [2020-07-10 20:30:19,896 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:30:19,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-10 20:30:19,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 460 transitions. [2020-07-10 20:30:19,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-10 20:30:19,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 460 transitions. [2020-07-10 20:30:19,905 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 460 transitions. [2020-07-10 20:30:20,544 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 460 edges. 460 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:30:20,855 INFO L225 Difference]: With dead ends: 4243 [2020-07-10 20:30:20,855 INFO L226 Difference]: Without dead ends: 2618 [2020-07-10 20:30:20,863 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=89, Invalid=217, Unknown=0, NotChecked=0, Total=306 [2020-07-10 20:30:20,865 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2618 states. [2020-07-10 20:30:38,432 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2618 to 2188. [2020-07-10 20:30:38,432 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:30:38,433 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2618 states. Second operand 2188 states. [2020-07-10 20:30:38,433 INFO L74 IsIncluded]: Start isIncluded. First operand 2618 states. Second operand 2188 states. [2020-07-10 20:30:38,433 INFO L87 Difference]: Start difference. First operand 2618 states. Second operand 2188 states. [2020-07-10 20:30:38,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:30:38,673 INFO L93 Difference]: Finished difference Result 2618 states and 3387 transitions. [2020-07-10 20:30:38,673 INFO L276 IsEmpty]: Start isEmpty. Operand 2618 states and 3387 transitions. [2020-07-10 20:30:38,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:30:38,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:30:38,678 INFO L74 IsIncluded]: Start isIncluded. First operand 2188 states. Second operand 2618 states. [2020-07-10 20:30:38,678 INFO L87 Difference]: Start difference. First operand 2188 states. Second operand 2618 states. [2020-07-10 20:30:38,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:30:38,909 INFO L93 Difference]: Finished difference Result 2618 states and 3387 transitions. [2020-07-10 20:30:38,909 INFO L276 IsEmpty]: Start isEmpty. Operand 2618 states and 3387 transitions. [2020-07-10 20:30:38,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:30:38,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:30:38,914 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:30:38,914 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:30:38,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2188 states. [2020-07-10 20:30:39,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2188 states to 2188 states and 2770 transitions. [2020-07-10 20:30:39,083 INFO L78 Accepts]: Start accepts. Automaton has 2188 states and 2770 transitions. Word has length 160 [2020-07-10 20:30:39,084 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:30:39,084 INFO L479 AbstractCegarLoop]: Abstraction has 2188 states and 2770 transitions. [2020-07-10 20:30:39,084 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-10 20:30:39,084 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2188 states and 2770 transitions. [2020-07-10 20:30:45,935 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 2770 edges. 2770 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:30:45,935 INFO L276 IsEmpty]: Start isEmpty. Operand 2188 states and 2770 transitions. [2020-07-10 20:30:45,938 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 161 [2020-07-10 20:30:45,938 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:30:45,938 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:30:45,939 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-10 20:30:45,939 INFO L427 AbstractCegarLoop]: === Iteration 8 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:30:45,939 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:30:45,939 INFO L82 PathProgramCache]: Analyzing trace with hash 651313811, now seen corresponding path program 1 times [2020-07-10 20:30:45,939 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:30:45,939 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1533181175] [2020-07-10 20:30:45,939 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:30:45,984 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,069 INFO L280 TraceCheckUtils]: 0: Hoare triple {96535#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,069 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} ~q_free~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,069 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~q_read_ev~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,069 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} ~q_write_ev~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,070 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} ~p_num_write~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,070 INFO L280 TraceCheckUtils]: 5: Hoare triple {96421#true} ~p_last_write~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,070 INFO L280 TraceCheckUtils]: 6: Hoare triple {96421#true} ~p_dw_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,070 INFO L280 TraceCheckUtils]: 7: Hoare triple {96421#true} ~p_dw_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,070 INFO L280 TraceCheckUtils]: 8: Hoare triple {96421#true} ~p_dw_i~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,071 INFO L280 TraceCheckUtils]: 9: Hoare triple {96421#true} ~c_num_read~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,071 INFO L280 TraceCheckUtils]: 10: Hoare triple {96421#true} ~c_last_read~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,071 INFO L280 TraceCheckUtils]: 11: Hoare triple {96421#true} ~c_dr_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,071 INFO L280 TraceCheckUtils]: 12: Hoare triple {96421#true} ~c_dr_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,071 INFO L280 TraceCheckUtils]: 13: Hoare triple {96421#true} ~c_dr_i~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,072 INFO L280 TraceCheckUtils]: 14: Hoare triple {96421#true} ~a_t~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,072 INFO L280 TraceCheckUtils]: 15: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,072 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {96421#true} {96421#true} #361#return; {96421#true} is VALID [2020-07-10 20:30:46,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,106 INFO L280 TraceCheckUtils]: 0: Hoare triple {96536#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,107 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} ~q_write_ev~0 := 2; {96421#true} is VALID [2020-07-10 20:30:46,107 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~q_read_ev~0 := ~q_write_ev~0; {96421#true} is VALID [2020-07-10 20:30:46,107 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} ~p_num_write~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,107 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} ~p_dw_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,107 INFO L280 TraceCheckUtils]: 5: Hoare triple {96421#true} ~p_dw_i~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,108 INFO L280 TraceCheckUtils]: 6: Hoare triple {96421#true} ~c_num_read~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,108 INFO L280 TraceCheckUtils]: 7: Hoare triple {96421#true} ~c_dr_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,108 INFO L280 TraceCheckUtils]: 8: Hoare triple {96421#true} ~c_dr_i~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,108 INFO L280 TraceCheckUtils]: 9: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,108 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {96421#true} {96421#true} #337#return; {96421#true} is VALID [2020-07-10 20:30:46,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,124 INFO L280 TraceCheckUtils]: 0: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {96421#true} is VALID [2020-07-10 20:30:46,124 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} ~p_dw_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,125 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} assume 1 == ~c_dr_i~0; {96421#true} is VALID [2020-07-10 20:30:46,125 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} ~c_dr_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,125 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,125 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {96421#true} {96421#true} #355#return; {96421#true} is VALID [2020-07-10 20:30:46,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,128 INFO L280 TraceCheckUtils]: 0: Hoare triple {96421#true} havoc ~__retres1~2; {96421#true} is VALID [2020-07-10 20:30:46,128 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} assume 0 == ~p_dw_st~0; {96421#true} is VALID [2020-07-10 20:30:46,128 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~__retres1~2 := 1; {96421#true} is VALID [2020-07-10 20:30:46,129 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} #res := ~__retres1~2; {96421#true} is VALID [2020-07-10 20:30:46,129 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,129 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {96421#true} {96421#true} #347#return; {96421#true} is VALID [2020-07-10 20:30:46,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,174 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,181 INFO L280 TraceCheckUtils]: 0: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,181 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} assume !(1 == ~p_dw_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,181 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~__retres1~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,182 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} #res := ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,182 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,183 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {96421#true} {96421#true} #343#return; {96421#true} is VALID [2020-07-10 20:30:46,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,190 INFO L280 TraceCheckUtils]: 0: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,190 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,190 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,191 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,191 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,192 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {96421#true} {96421#true} #345#return; {96421#true} is VALID [2020-07-10 20:30:46,192 INFO L280 TraceCheckUtils]: 0: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {96421#true} is VALID [2020-07-10 20:30:46,192 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} havoc ~tmp___0~0; {96421#true} is VALID [2020-07-10 20:30:46,193 INFO L263 TraceCheckUtils]: 2: Hoare triple {96421#true} call #t~ret0 := is_do_write_p_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,193 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,193 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume !(1 == ~p_dw_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,194 INFO L280 TraceCheckUtils]: 5: Hoare triple {96421#true} ~__retres1~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,194 INFO L280 TraceCheckUtils]: 6: Hoare triple {96421#true} #res := ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,194 INFO L280 TraceCheckUtils]: 7: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,195 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {96421#true} {96421#true} #343#return; {96421#true} is VALID [2020-07-10 20:30:46,195 INFO L280 TraceCheckUtils]: 9: Hoare triple {96421#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,195 INFO L280 TraceCheckUtils]: 10: Hoare triple {96421#true} ~tmp~0 := #t~ret0; {96421#true} is VALID [2020-07-10 20:30:46,196 INFO L280 TraceCheckUtils]: 11: Hoare triple {96421#true} havoc #t~ret0; {96421#true} is VALID [2020-07-10 20:30:46,196 INFO L280 TraceCheckUtils]: 12: Hoare triple {96421#true} assume !(0 != ~tmp~0); {96421#true} is VALID [2020-07-10 20:30:46,196 INFO L263 TraceCheckUtils]: 13: Hoare triple {96421#true} call #t~ret1 := is_do_read_c_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,197 INFO L280 TraceCheckUtils]: 14: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,197 INFO L280 TraceCheckUtils]: 15: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,197 INFO L280 TraceCheckUtils]: 16: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,198 INFO L280 TraceCheckUtils]: 17: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,198 INFO L280 TraceCheckUtils]: 18: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,198 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {96421#true} {96421#true} #345#return; {96421#true} is VALID [2020-07-10 20:30:46,199 INFO L280 TraceCheckUtils]: 20: Hoare triple {96421#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,199 INFO L280 TraceCheckUtils]: 21: Hoare triple {96421#true} ~tmp___0~0 := #t~ret1; {96421#true} is VALID [2020-07-10 20:30:46,199 INFO L280 TraceCheckUtils]: 22: Hoare triple {96421#true} havoc #t~ret1; {96421#true} is VALID [2020-07-10 20:30:46,200 INFO L280 TraceCheckUtils]: 23: Hoare triple {96421#true} assume !(0 != ~tmp___0~0); {96421#true} is VALID [2020-07-10 20:30:46,200 INFO L280 TraceCheckUtils]: 24: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,200 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {96421#true} {96421#true} #341#return; {96421#true} is VALID [2020-07-10 20:30:46,201 INFO L280 TraceCheckUtils]: 0: Hoare triple {96538#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {96421#true} is VALID [2020-07-10 20:30:46,201 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,201 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} assume !(0 == ~q_free~0); {96421#true} is VALID [2020-07-10 20:30:46,202 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,202 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} ~q_buf_0~0 := #t~nondet2; {96421#true} is VALID [2020-07-10 20:30:46,202 INFO L280 TraceCheckUtils]: 5: Hoare triple {96421#true} havoc #t~nondet2; {96421#true} is VALID [2020-07-10 20:30:46,202 INFO L280 TraceCheckUtils]: 6: Hoare triple {96421#true} ~p_last_write~0 := ~q_buf_0~0; {96421#true} is VALID [2020-07-10 20:30:46,202 INFO L280 TraceCheckUtils]: 7: Hoare triple {96421#true} ~p_num_write~0 := 1 + ~p_num_write~0; {96421#true} is VALID [2020-07-10 20:30:46,203 INFO L280 TraceCheckUtils]: 8: Hoare triple {96421#true} ~q_free~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,203 INFO L280 TraceCheckUtils]: 9: Hoare triple {96421#true} ~q_write_ev~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,205 INFO L263 TraceCheckUtils]: 10: Hoare triple {96421#true} call immediate_notify_threads(); {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:30:46,205 INFO L280 TraceCheckUtils]: 11: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {96421#true} is VALID [2020-07-10 20:30:46,205 INFO L280 TraceCheckUtils]: 12: Hoare triple {96421#true} havoc ~tmp___0~0; {96421#true} is VALID [2020-07-10 20:30:46,205 INFO L263 TraceCheckUtils]: 13: Hoare triple {96421#true} call #t~ret0 := is_do_write_p_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,206 INFO L280 TraceCheckUtils]: 14: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,206 INFO L280 TraceCheckUtils]: 15: Hoare triple {96421#true} assume !(1 == ~p_dw_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,206 INFO L280 TraceCheckUtils]: 16: Hoare triple {96421#true} ~__retres1~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,206 INFO L280 TraceCheckUtils]: 17: Hoare triple {96421#true} #res := ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,207 INFO L280 TraceCheckUtils]: 18: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,207 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {96421#true} {96421#true} #343#return; {96421#true} is VALID [2020-07-10 20:30:46,207 INFO L280 TraceCheckUtils]: 20: Hoare triple {96421#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,207 INFO L280 TraceCheckUtils]: 21: Hoare triple {96421#true} ~tmp~0 := #t~ret0; {96421#true} is VALID [2020-07-10 20:30:46,207 INFO L280 TraceCheckUtils]: 22: Hoare triple {96421#true} havoc #t~ret0; {96421#true} is VALID [2020-07-10 20:30:46,208 INFO L280 TraceCheckUtils]: 23: Hoare triple {96421#true} assume !(0 != ~tmp~0); {96421#true} is VALID [2020-07-10 20:30:46,208 INFO L263 TraceCheckUtils]: 24: Hoare triple {96421#true} call #t~ret1 := is_do_read_c_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,208 INFO L280 TraceCheckUtils]: 25: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,208 INFO L280 TraceCheckUtils]: 26: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,208 INFO L280 TraceCheckUtils]: 27: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,209 INFO L280 TraceCheckUtils]: 28: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,209 INFO L280 TraceCheckUtils]: 29: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,209 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {96421#true} {96421#true} #345#return; {96421#true} is VALID [2020-07-10 20:30:46,209 INFO L280 TraceCheckUtils]: 31: Hoare triple {96421#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,209 INFO L280 TraceCheckUtils]: 32: Hoare triple {96421#true} ~tmp___0~0 := #t~ret1; {96421#true} is VALID [2020-07-10 20:30:46,210 INFO L280 TraceCheckUtils]: 33: Hoare triple {96421#true} havoc #t~ret1; {96421#true} is VALID [2020-07-10 20:30:46,210 INFO L280 TraceCheckUtils]: 34: Hoare triple {96421#true} assume !(0 != ~tmp___0~0); {96421#true} is VALID [2020-07-10 20:30:46,210 INFO L280 TraceCheckUtils]: 35: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,210 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {96421#true} {96421#true} #341#return; {96421#true} is VALID [2020-07-10 20:30:46,210 INFO L280 TraceCheckUtils]: 37: Hoare triple {96421#true} ~q_write_ev~0 := 2; {96421#true} is VALID [2020-07-10 20:30:46,211 INFO L280 TraceCheckUtils]: 38: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,211 INFO L280 TraceCheckUtils]: 39: Hoare triple {96421#true} assume 0 == ~q_free~0; {96421#true} is VALID [2020-07-10 20:30:46,211 INFO L280 TraceCheckUtils]: 40: Hoare triple {96421#true} ~p_dw_st~0 := 2; {96421#true} is VALID [2020-07-10 20:30:46,211 INFO L280 TraceCheckUtils]: 41: Hoare triple {96421#true} ~p_dw_pc~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,211 INFO L280 TraceCheckUtils]: 42: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,212 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {96421#true} {96421#true} #349#return; {96421#true} is VALID [2020-07-10 20:30:46,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,244 INFO L280 TraceCheckUtils]: 0: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,244 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} assume 1 == ~p_dw_pc~0; {96421#true} is VALID [2020-07-10 20:30:46,245 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} assume !(1 == ~q_read_ev~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,245 INFO L280 TraceCheckUtils]: 3: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~__retres1~0 := 0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,246 INFO L280 TraceCheckUtils]: 4: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} #res := ~__retres1~0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,246 INFO L280 TraceCheckUtils]: 5: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume true; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,247 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {96584#(not (= 1 ~q_read_ev~0))} {96421#true} #343#return; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:30:46,251 INFO L280 TraceCheckUtils]: 0: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,251 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,251 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,252 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,252 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,253 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {96421#true} {96584#(not (= 1 ~q_read_ev~0))} #345#return; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,253 INFO L280 TraceCheckUtils]: 0: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {96421#true} is VALID [2020-07-10 20:30:46,253 INFO L280 TraceCheckUtils]: 1: Hoare triple {96421#true} havoc ~tmp___0~0; {96421#true} is VALID [2020-07-10 20:30:46,253 INFO L263 TraceCheckUtils]: 2: Hoare triple {96421#true} call #t~ret0 := is_do_write_p_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,254 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,254 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} assume 1 == ~p_dw_pc~0; {96421#true} is VALID [2020-07-10 20:30:46,254 INFO L280 TraceCheckUtils]: 5: Hoare triple {96421#true} assume !(1 == ~q_read_ev~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,255 INFO L280 TraceCheckUtils]: 6: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~__retres1~0 := 0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,255 INFO L280 TraceCheckUtils]: 7: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} #res := ~__retres1~0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,256 INFO L280 TraceCheckUtils]: 8: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume true; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,257 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {96584#(not (= 1 ~q_read_ev~0))} {96421#true} #343#return; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,257 INFO L280 TraceCheckUtils]: 10: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,258 INFO L280 TraceCheckUtils]: 11: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~tmp~0 := #t~ret0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,258 INFO L280 TraceCheckUtils]: 12: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} havoc #t~ret0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,259 INFO L280 TraceCheckUtils]: 13: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume !(0 != ~tmp~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,259 INFO L263 TraceCheckUtils]: 14: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} call #t~ret1 := is_do_read_c_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,259 INFO L280 TraceCheckUtils]: 15: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,260 INFO L280 TraceCheckUtils]: 16: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,260 INFO L280 TraceCheckUtils]: 17: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,260 INFO L280 TraceCheckUtils]: 18: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,260 INFO L280 TraceCheckUtils]: 19: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,261 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {96421#true} {96584#(not (= 1 ~q_read_ev~0))} #345#return; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,261 INFO L280 TraceCheckUtils]: 21: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,262 INFO L280 TraceCheckUtils]: 22: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~tmp___0~0 := #t~ret1; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,262 INFO L280 TraceCheckUtils]: 23: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} havoc #t~ret1; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,263 INFO L280 TraceCheckUtils]: 24: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume !(0 != ~tmp___0~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,263 INFO L280 TraceCheckUtils]: 25: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume true; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,264 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {96584#(not (= 1 ~q_read_ev~0))} {96507#(= 1 ~q_read_ev~0)} #365#return; {96422#false} is VALID [2020-07-10 20:30:46,267 INFO L263 TraceCheckUtils]: 0: Hoare triple {96421#true} call ULTIMATE.init(); {96535#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:30:46,268 INFO L280 TraceCheckUtils]: 1: Hoare triple {96535#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,268 INFO L280 TraceCheckUtils]: 2: Hoare triple {96421#true} ~q_free~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,268 INFO L280 TraceCheckUtils]: 3: Hoare triple {96421#true} ~q_read_ev~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,269 INFO L280 TraceCheckUtils]: 4: Hoare triple {96421#true} ~q_write_ev~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,269 INFO L280 TraceCheckUtils]: 5: Hoare triple {96421#true} ~p_num_write~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,269 INFO L280 TraceCheckUtils]: 6: Hoare triple {96421#true} ~p_last_write~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,270 INFO L280 TraceCheckUtils]: 7: Hoare triple {96421#true} ~p_dw_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,270 INFO L280 TraceCheckUtils]: 8: Hoare triple {96421#true} ~p_dw_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,270 INFO L280 TraceCheckUtils]: 9: Hoare triple {96421#true} ~p_dw_i~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,271 INFO L280 TraceCheckUtils]: 10: Hoare triple {96421#true} ~c_num_read~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,271 INFO L280 TraceCheckUtils]: 11: Hoare triple {96421#true} ~c_last_read~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,271 INFO L280 TraceCheckUtils]: 12: Hoare triple {96421#true} ~c_dr_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,272 INFO L280 TraceCheckUtils]: 13: Hoare triple {96421#true} ~c_dr_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,272 INFO L280 TraceCheckUtils]: 14: Hoare triple {96421#true} ~c_dr_i~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,272 INFO L280 TraceCheckUtils]: 15: Hoare triple {96421#true} ~a_t~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,273 INFO L280 TraceCheckUtils]: 16: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,273 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {96421#true} {96421#true} #361#return; {96421#true} is VALID [2020-07-10 20:30:46,273 INFO L263 TraceCheckUtils]: 18: Hoare triple {96421#true} call #t~ret8 := main(); {96421#true} is VALID [2020-07-10 20:30:46,274 INFO L280 TraceCheckUtils]: 19: Hoare triple {96421#true} havoc ~__retres1~3; {96421#true} is VALID [2020-07-10 20:30:46,275 INFO L263 TraceCheckUtils]: 20: Hoare triple {96421#true} call init_model(); {96536#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:30:46,276 INFO L280 TraceCheckUtils]: 21: Hoare triple {96536#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,276 INFO L280 TraceCheckUtils]: 22: Hoare triple {96421#true} ~q_write_ev~0 := 2; {96421#true} is VALID [2020-07-10 20:30:46,276 INFO L280 TraceCheckUtils]: 23: Hoare triple {96421#true} ~q_read_ev~0 := ~q_write_ev~0; {96421#true} is VALID [2020-07-10 20:30:46,277 INFO L280 TraceCheckUtils]: 24: Hoare triple {96421#true} ~p_num_write~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,277 INFO L280 TraceCheckUtils]: 25: Hoare triple {96421#true} ~p_dw_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,277 INFO L280 TraceCheckUtils]: 26: Hoare triple {96421#true} ~p_dw_i~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,278 INFO L280 TraceCheckUtils]: 27: Hoare triple {96421#true} ~c_num_read~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,278 INFO L280 TraceCheckUtils]: 28: Hoare triple {96421#true} ~c_dr_pc~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,278 INFO L280 TraceCheckUtils]: 29: Hoare triple {96421#true} ~c_dr_i~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,278 INFO L280 TraceCheckUtils]: 30: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,279 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {96421#true} {96421#true} #337#return; {96421#true} is VALID [2020-07-10 20:30:46,279 INFO L263 TraceCheckUtils]: 32: Hoare triple {96421#true} call start_simulation(); {96421#true} is VALID [2020-07-10 20:30:46,279 INFO L280 TraceCheckUtils]: 33: Hoare triple {96421#true} havoc ~kernel_st~0; {96421#true} is VALID [2020-07-10 20:30:46,280 INFO L280 TraceCheckUtils]: 34: Hoare triple {96421#true} havoc ~tmp~3; {96421#true} is VALID [2020-07-10 20:30:46,280 INFO L280 TraceCheckUtils]: 35: Hoare triple {96421#true} ~kernel_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,283 INFO L263 TraceCheckUtils]: 36: Hoare triple {96421#true} call init_threads(); {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:30:46,283 INFO L280 TraceCheckUtils]: 37: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {96421#true} is VALID [2020-07-10 20:30:46,283 INFO L280 TraceCheckUtils]: 38: Hoare triple {96421#true} ~p_dw_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,284 INFO L280 TraceCheckUtils]: 39: Hoare triple {96421#true} assume 1 == ~c_dr_i~0; {96421#true} is VALID [2020-07-10 20:30:46,284 INFO L280 TraceCheckUtils]: 40: Hoare triple {96421#true} ~c_dr_st~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,284 INFO L280 TraceCheckUtils]: 41: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,284 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {96421#true} {96421#true} #355#return; {96421#true} is VALID [2020-07-10 20:30:46,284 INFO L280 TraceCheckUtils]: 43: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,285 INFO L280 TraceCheckUtils]: 44: Hoare triple {96421#true} ~kernel_st~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,285 INFO L263 TraceCheckUtils]: 45: Hoare triple {96421#true} call eval(); {96421#true} is VALID [2020-07-10 20:30:46,285 INFO L280 TraceCheckUtils]: 46: Hoare triple {96421#true} havoc ~tmp~1; {96421#true} is VALID [2020-07-10 20:30:46,285 INFO L280 TraceCheckUtils]: 47: Hoare triple {96421#true} havoc ~tmp___0~1; {96421#true} is VALID [2020-07-10 20:30:46,285 INFO L280 TraceCheckUtils]: 48: Hoare triple {96421#true} havoc ~tmp___1~0; {96421#true} is VALID [2020-07-10 20:30:46,285 INFO L280 TraceCheckUtils]: 49: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,286 INFO L263 TraceCheckUtils]: 50: Hoare triple {96421#true} call #t~ret3 := exists_runnable_thread(); {96421#true} is VALID [2020-07-10 20:30:46,286 INFO L280 TraceCheckUtils]: 51: Hoare triple {96421#true} havoc ~__retres1~2; {96421#true} is VALID [2020-07-10 20:30:46,286 INFO L280 TraceCheckUtils]: 52: Hoare triple {96421#true} assume 0 == ~p_dw_st~0; {96421#true} is VALID [2020-07-10 20:30:46,286 INFO L280 TraceCheckUtils]: 53: Hoare triple {96421#true} ~__retres1~2 := 1; {96421#true} is VALID [2020-07-10 20:30:46,287 INFO L280 TraceCheckUtils]: 54: Hoare triple {96421#true} #res := ~__retres1~2; {96421#true} is VALID [2020-07-10 20:30:46,287 INFO L280 TraceCheckUtils]: 55: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,287 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {96421#true} {96421#true} #347#return; {96421#true} is VALID [2020-07-10 20:30:46,287 INFO L280 TraceCheckUtils]: 57: Hoare triple {96421#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,287 INFO L280 TraceCheckUtils]: 58: Hoare triple {96421#true} ~tmp___1~0 := #t~ret3; {96421#true} is VALID [2020-07-10 20:30:46,288 INFO L280 TraceCheckUtils]: 59: Hoare triple {96421#true} havoc #t~ret3; {96421#true} is VALID [2020-07-10 20:30:46,288 INFO L280 TraceCheckUtils]: 60: Hoare triple {96421#true} assume 0 != ~tmp___1~0; {96421#true} is VALID [2020-07-10 20:30:46,288 INFO L280 TraceCheckUtils]: 61: Hoare triple {96421#true} assume 0 == ~p_dw_st~0; {96421#true} is VALID [2020-07-10 20:30:46,288 INFO L280 TraceCheckUtils]: 62: Hoare triple {96421#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,289 INFO L280 TraceCheckUtils]: 63: Hoare triple {96421#true} ~tmp~1 := #t~nondet4; {96421#true} is VALID [2020-07-10 20:30:46,289 INFO L280 TraceCheckUtils]: 64: Hoare triple {96421#true} havoc #t~nondet4; {96421#true} is VALID [2020-07-10 20:30:46,289 INFO L280 TraceCheckUtils]: 65: Hoare triple {96421#true} assume 0 != ~tmp~1; {96421#true} is VALID [2020-07-10 20:30:46,289 INFO L280 TraceCheckUtils]: 66: Hoare triple {96421#true} ~p_dw_st~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,291 INFO L263 TraceCheckUtils]: 67: Hoare triple {96421#true} call do_write_p(); {96538#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:30:46,291 INFO L280 TraceCheckUtils]: 68: Hoare triple {96538#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {96421#true} is VALID [2020-07-10 20:30:46,291 INFO L280 TraceCheckUtils]: 69: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,292 INFO L280 TraceCheckUtils]: 70: Hoare triple {96421#true} assume !(0 == ~q_free~0); {96421#true} is VALID [2020-07-10 20:30:46,292 INFO L280 TraceCheckUtils]: 71: Hoare triple {96421#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,292 INFO L280 TraceCheckUtils]: 72: Hoare triple {96421#true} ~q_buf_0~0 := #t~nondet2; {96421#true} is VALID [2020-07-10 20:30:46,292 INFO L280 TraceCheckUtils]: 73: Hoare triple {96421#true} havoc #t~nondet2; {96421#true} is VALID [2020-07-10 20:30:46,293 INFO L280 TraceCheckUtils]: 74: Hoare triple {96421#true} ~p_last_write~0 := ~q_buf_0~0; {96421#true} is VALID [2020-07-10 20:30:46,293 INFO L280 TraceCheckUtils]: 75: Hoare triple {96421#true} ~p_num_write~0 := 1 + ~p_num_write~0; {96421#true} is VALID [2020-07-10 20:30:46,293 INFO L280 TraceCheckUtils]: 76: Hoare triple {96421#true} ~q_free~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,293 INFO L280 TraceCheckUtils]: 77: Hoare triple {96421#true} ~q_write_ev~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,294 INFO L263 TraceCheckUtils]: 78: Hoare triple {96421#true} call immediate_notify_threads(); {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:30:46,294 INFO L280 TraceCheckUtils]: 79: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {96421#true} is VALID [2020-07-10 20:30:46,294 INFO L280 TraceCheckUtils]: 80: Hoare triple {96421#true} havoc ~tmp___0~0; {96421#true} is VALID [2020-07-10 20:30:46,294 INFO L263 TraceCheckUtils]: 81: Hoare triple {96421#true} call #t~ret0 := is_do_write_p_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,295 INFO L280 TraceCheckUtils]: 82: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,295 INFO L280 TraceCheckUtils]: 83: Hoare triple {96421#true} assume !(1 == ~p_dw_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,295 INFO L280 TraceCheckUtils]: 84: Hoare triple {96421#true} ~__retres1~0 := 0; {96421#true} is VALID [2020-07-10 20:30:46,295 INFO L280 TraceCheckUtils]: 85: Hoare triple {96421#true} #res := ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,295 INFO L280 TraceCheckUtils]: 86: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,296 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {96421#true} {96421#true} #343#return; {96421#true} is VALID [2020-07-10 20:30:46,296 INFO L280 TraceCheckUtils]: 88: Hoare triple {96421#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,296 INFO L280 TraceCheckUtils]: 89: Hoare triple {96421#true} ~tmp~0 := #t~ret0; {96421#true} is VALID [2020-07-10 20:30:46,296 INFO L280 TraceCheckUtils]: 90: Hoare triple {96421#true} havoc #t~ret0; {96421#true} is VALID [2020-07-10 20:30:46,296 INFO L280 TraceCheckUtils]: 91: Hoare triple {96421#true} assume !(0 != ~tmp~0); {96421#true} is VALID [2020-07-10 20:30:46,296 INFO L263 TraceCheckUtils]: 92: Hoare triple {96421#true} call #t~ret1 := is_do_read_c_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,297 INFO L280 TraceCheckUtils]: 93: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,297 INFO L280 TraceCheckUtils]: 94: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,297 INFO L280 TraceCheckUtils]: 95: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,297 INFO L280 TraceCheckUtils]: 96: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,297 INFO L280 TraceCheckUtils]: 97: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,298 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {96421#true} {96421#true} #345#return; {96421#true} is VALID [2020-07-10 20:30:46,298 INFO L280 TraceCheckUtils]: 99: Hoare triple {96421#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,298 INFO L280 TraceCheckUtils]: 100: Hoare triple {96421#true} ~tmp___0~0 := #t~ret1; {96421#true} is VALID [2020-07-10 20:30:46,298 INFO L280 TraceCheckUtils]: 101: Hoare triple {96421#true} havoc #t~ret1; {96421#true} is VALID [2020-07-10 20:30:46,299 INFO L280 TraceCheckUtils]: 102: Hoare triple {96421#true} assume !(0 != ~tmp___0~0); {96421#true} is VALID [2020-07-10 20:30:46,299 INFO L280 TraceCheckUtils]: 103: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,299 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {96421#true} {96421#true} #341#return; {96421#true} is VALID [2020-07-10 20:30:46,300 INFO L280 TraceCheckUtils]: 105: Hoare triple {96421#true} ~q_write_ev~0 := 2; {96421#true} is VALID [2020-07-10 20:30:46,300 INFO L280 TraceCheckUtils]: 106: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,300 INFO L280 TraceCheckUtils]: 107: Hoare triple {96421#true} assume 0 == ~q_free~0; {96421#true} is VALID [2020-07-10 20:30:46,301 INFO L280 TraceCheckUtils]: 108: Hoare triple {96421#true} ~p_dw_st~0 := 2; {96421#true} is VALID [2020-07-10 20:30:46,301 INFO L280 TraceCheckUtils]: 109: Hoare triple {96421#true} ~p_dw_pc~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,301 INFO L280 TraceCheckUtils]: 110: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,302 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {96421#true} {96421#true} #349#return; {96421#true} is VALID [2020-07-10 20:30:46,302 INFO L280 TraceCheckUtils]: 112: Hoare triple {96421#true} assume 0 == ~c_dr_st~0; {96421#true} is VALID [2020-07-10 20:30:46,302 INFO L280 TraceCheckUtils]: 113: Hoare triple {96421#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {96421#true} is VALID [2020-07-10 20:30:46,303 INFO L280 TraceCheckUtils]: 114: Hoare triple {96421#true} ~tmp___0~1 := #t~nondet5; {96421#true} is VALID [2020-07-10 20:30:46,303 INFO L280 TraceCheckUtils]: 115: Hoare triple {96421#true} havoc #t~nondet5; {96421#true} is VALID [2020-07-10 20:30:46,303 INFO L280 TraceCheckUtils]: 116: Hoare triple {96421#true} assume 0 != ~tmp___0~1; {96421#true} is VALID [2020-07-10 20:30:46,303 INFO L280 TraceCheckUtils]: 117: Hoare triple {96421#true} ~c_dr_st~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,304 INFO L263 TraceCheckUtils]: 118: Hoare triple {96421#true} call do_read_c(); {96421#true} is VALID [2020-07-10 20:30:46,304 INFO L280 TraceCheckUtils]: 119: Hoare triple {96421#true} havoc ~a~0; {96421#true} is VALID [2020-07-10 20:30:46,304 INFO L280 TraceCheckUtils]: 120: Hoare triple {96421#true} assume 0 == ~c_dr_pc~0; {96421#true} is VALID [2020-07-10 20:30:46,305 INFO L280 TraceCheckUtils]: 121: Hoare triple {96421#true} assume !false; {96421#true} is VALID [2020-07-10 20:30:46,305 INFO L280 TraceCheckUtils]: 122: Hoare triple {96421#true} assume !(1 == ~q_free~0); {96421#true} is VALID [2020-07-10 20:30:46,305 INFO L280 TraceCheckUtils]: 123: Hoare triple {96421#true} ~a~0 := ~q_buf_0~0; {96421#true} is VALID [2020-07-10 20:30:46,306 INFO L280 TraceCheckUtils]: 124: Hoare triple {96421#true} ~c_last_read~0 := ~a~0; {96421#true} is VALID [2020-07-10 20:30:46,306 INFO L280 TraceCheckUtils]: 125: Hoare triple {96421#true} ~c_num_read~0 := 1 + ~c_num_read~0; {96421#true} is VALID [2020-07-10 20:30:46,306 INFO L280 TraceCheckUtils]: 126: Hoare triple {96421#true} ~q_free~0 := 1; {96421#true} is VALID [2020-07-10 20:30:46,310 INFO L280 TraceCheckUtils]: 127: Hoare triple {96421#true} ~q_read_ev~0 := 1; {96507#(= 1 ~q_read_ev~0)} is VALID [2020-07-10 20:30:46,311 INFO L263 TraceCheckUtils]: 128: Hoare triple {96507#(= 1 ~q_read_ev~0)} call immediate_notify_threads(); {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:30:46,312 INFO L280 TraceCheckUtils]: 129: Hoare triple {96537#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {96421#true} is VALID [2020-07-10 20:30:46,312 INFO L280 TraceCheckUtils]: 130: Hoare triple {96421#true} havoc ~tmp___0~0; {96421#true} is VALID [2020-07-10 20:30:46,312 INFO L263 TraceCheckUtils]: 131: Hoare triple {96421#true} call #t~ret0 := is_do_write_p_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,313 INFO L280 TraceCheckUtils]: 132: Hoare triple {96421#true} havoc ~__retres1~0; {96421#true} is VALID [2020-07-10 20:30:46,313 INFO L280 TraceCheckUtils]: 133: Hoare triple {96421#true} assume 1 == ~p_dw_pc~0; {96421#true} is VALID [2020-07-10 20:30:46,314 INFO L280 TraceCheckUtils]: 134: Hoare triple {96421#true} assume !(1 == ~q_read_ev~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,314 INFO L280 TraceCheckUtils]: 135: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~__retres1~0 := 0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,315 INFO L280 TraceCheckUtils]: 136: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} #res := ~__retres1~0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,316 INFO L280 TraceCheckUtils]: 137: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume true; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,317 INFO L275 TraceCheckUtils]: 138: Hoare quadruple {96584#(not (= 1 ~q_read_ev~0))} {96421#true} #343#return; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,317 INFO L280 TraceCheckUtils]: 139: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,318 INFO L280 TraceCheckUtils]: 140: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~tmp~0 := #t~ret0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,318 INFO L280 TraceCheckUtils]: 141: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} havoc #t~ret0; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,319 INFO L280 TraceCheckUtils]: 142: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume !(0 != ~tmp~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,319 INFO L263 TraceCheckUtils]: 143: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} call #t~ret1 := is_do_read_c_triggered(); {96421#true} is VALID [2020-07-10 20:30:46,319 INFO L280 TraceCheckUtils]: 144: Hoare triple {96421#true} havoc ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,319 INFO L280 TraceCheckUtils]: 145: Hoare triple {96421#true} assume !(1 == ~c_dr_pc~0); {96421#true} is VALID [2020-07-10 20:30:46,320 INFO L280 TraceCheckUtils]: 146: Hoare triple {96421#true} ~__retres1~1 := 0; {96421#true} is VALID [2020-07-10 20:30:46,320 INFO L280 TraceCheckUtils]: 147: Hoare triple {96421#true} #res := ~__retres1~1; {96421#true} is VALID [2020-07-10 20:30:46,320 INFO L280 TraceCheckUtils]: 148: Hoare triple {96421#true} assume true; {96421#true} is VALID [2020-07-10 20:30:46,321 INFO L275 TraceCheckUtils]: 149: Hoare quadruple {96421#true} {96584#(not (= 1 ~q_read_ev~0))} #345#return; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,321 INFO L280 TraceCheckUtils]: 150: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,322 INFO L280 TraceCheckUtils]: 151: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} ~tmp___0~0 := #t~ret1; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,322 INFO L280 TraceCheckUtils]: 152: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} havoc #t~ret1; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,323 INFO L280 TraceCheckUtils]: 153: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume !(0 != ~tmp___0~0); {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,323 INFO L280 TraceCheckUtils]: 154: Hoare triple {96584#(not (= 1 ~q_read_ev~0))} assume true; {96584#(not (= 1 ~q_read_ev~0))} is VALID [2020-07-10 20:30:46,324 INFO L275 TraceCheckUtils]: 155: Hoare quadruple {96584#(not (= 1 ~q_read_ev~0))} {96507#(= 1 ~q_read_ev~0)} #365#return; {96422#false} is VALID [2020-07-10 20:30:46,324 INFO L280 TraceCheckUtils]: 156: Hoare triple {96422#false} ~q_read_ev~0 := 2; {96422#false} is VALID [2020-07-10 20:30:46,325 INFO L280 TraceCheckUtils]: 157: Hoare triple {96422#false} assume !(~p_last_write~0 == ~c_last_read~0); {96422#false} is VALID [2020-07-10 20:30:46,325 INFO L263 TraceCheckUtils]: 158: Hoare triple {96422#false} call error(); {96422#false} is VALID [2020-07-10 20:30:46,325 INFO L280 TraceCheckUtils]: 159: Hoare triple {96422#false} assume !false; {96422#false} is VALID [2020-07-10 20:30:46,354 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:30:46,354 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:30:46,354 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1533181175] [2020-07-10 20:30:46,355 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:30:46,355 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-10 20:30:46,355 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [492813234] [2020-07-10 20:30:46,355 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 160 [2020-07-10 20:30:46,356 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:30:46,356 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-10 20:30:46,488 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:30:46,488 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-10 20:30:46,489 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:30:46,489 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-10 20:30:46,489 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-10 20:30:46,489 INFO L87 Difference]: Start difference. First operand 2188 states and 2770 transitions. Second operand 8 states. [2020-07-10 20:31:32,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:31:32,431 INFO L93 Difference]: Finished difference Result 6557 states and 9807 transitions. [2020-07-10 20:31:32,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2020-07-10 20:31:32,431 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 160 [2020-07-10 20:31:32,432 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:31:32,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 20:31:32,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 829 transitions. [2020-07-10 20:31:32,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 20:31:32,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 829 transitions. [2020-07-10 20:31:32,446 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 829 transitions. [2020-07-10 20:31:33,687 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 829 edges. 829 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:31:34,596 INFO L225 Difference]: With dead ends: 6557 [2020-07-10 20:31:34,596 INFO L226 Difference]: Without dead ends: 4848 [2020-07-10 20:31:34,606 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=125, Invalid=337, Unknown=0, NotChecked=0, Total=462 [2020-07-10 20:31:34,609 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4848 states. [2020-07-10 20:32:08,996 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4848 to 4321. [2020-07-10 20:32:08,997 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:32:08,997 INFO L82 GeneralOperation]: Start isEquivalent. First operand 4848 states. Second operand 4321 states. [2020-07-10 20:32:08,997 INFO L74 IsIncluded]: Start isIncluded. First operand 4848 states. Second operand 4321 states. [2020-07-10 20:32:08,997 INFO L87 Difference]: Start difference. First operand 4848 states. Second operand 4321 states. [2020-07-10 20:32:09,809 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:32:09,809 INFO L93 Difference]: Finished difference Result 4848 states and 6800 transitions. [2020-07-10 20:32:09,809 INFO L276 IsEmpty]: Start isEmpty. Operand 4848 states and 6800 transitions. [2020-07-10 20:32:09,823 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:32:09,823 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:32:09,823 INFO L74 IsIncluded]: Start isIncluded. First operand 4321 states. Second operand 4848 states. [2020-07-10 20:32:09,823 INFO L87 Difference]: Start difference. First operand 4321 states. Second operand 4848 states. [2020-07-10 20:32:10,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:32:10,639 INFO L93 Difference]: Finished difference Result 4848 states and 6800 transitions. [2020-07-10 20:32:10,639 INFO L276 IsEmpty]: Start isEmpty. Operand 4848 states and 6800 transitions. [2020-07-10 20:32:10,653 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:32:10,653 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:32:10,653 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:32:10,654 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:32:10,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4321 states. [2020-07-10 20:32:11,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4321 states to 4321 states and 6072 transitions. [2020-07-10 20:32:11,378 INFO L78 Accepts]: Start accepts. Automaton has 4321 states and 6072 transitions. Word has length 160 [2020-07-10 20:32:11,378 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:32:11,379 INFO L479 AbstractCegarLoop]: Abstraction has 4321 states and 6072 transitions. [2020-07-10 20:32:11,379 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-10 20:32:11,379 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4321 states and 6072 transitions. [2020-07-10 20:32:26,207 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6072 edges. 6072 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:32:26,208 INFO L276 IsEmpty]: Start isEmpty. Operand 4321 states and 6072 transitions. [2020-07-10 20:32:26,210 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 180 [2020-07-10 20:32:26,210 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:32:26,211 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:32:26,211 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-10 20:32:26,211 INFO L427 AbstractCegarLoop]: === Iteration 9 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:32:26,211 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:32:26,212 INFO L82 PathProgramCache]: Analyzing trace with hash 433644963, now seen corresponding path program 1 times [2020-07-10 20:32:26,212 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:32:26,212 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [148608739] [2020-07-10 20:32:26,212 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:32:26,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,352 INFO L280 TraceCheckUtils]: 0: Hoare triple {128199#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,352 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} ~q_free~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,352 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~q_read_ev~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,352 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} ~q_write_ev~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,352 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} ~p_num_write~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,352 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} ~p_last_write~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,353 INFO L280 TraceCheckUtils]: 6: Hoare triple {128078#true} ~p_dw_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,353 INFO L280 TraceCheckUtils]: 7: Hoare triple {128078#true} ~p_dw_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,353 INFO L280 TraceCheckUtils]: 8: Hoare triple {128078#true} ~p_dw_i~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,353 INFO L280 TraceCheckUtils]: 9: Hoare triple {128078#true} ~c_num_read~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,353 INFO L280 TraceCheckUtils]: 10: Hoare triple {128078#true} ~c_last_read~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,353 INFO L280 TraceCheckUtils]: 11: Hoare triple {128078#true} ~c_dr_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,354 INFO L280 TraceCheckUtils]: 12: Hoare triple {128078#true} ~c_dr_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,354 INFO L280 TraceCheckUtils]: 13: Hoare triple {128078#true} ~c_dr_i~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,354 INFO L280 TraceCheckUtils]: 14: Hoare triple {128078#true} ~a_t~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,354 INFO L280 TraceCheckUtils]: 15: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,354 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {128078#true} {128078#true} #361#return; {128078#true} is VALID [2020-07-10 20:32:26,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,393 INFO L280 TraceCheckUtils]: 0: Hoare triple {128200#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,394 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} ~q_write_ev~0 := 2; {128078#true} is VALID [2020-07-10 20:32:26,394 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~q_read_ev~0 := ~q_write_ev~0; {128078#true} is VALID [2020-07-10 20:32:26,394 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} ~p_num_write~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,394 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} ~p_dw_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,395 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} ~p_dw_i~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,395 INFO L280 TraceCheckUtils]: 6: Hoare triple {128078#true} ~c_num_read~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,395 INFO L280 TraceCheckUtils]: 7: Hoare triple {128078#true} ~c_dr_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,395 INFO L280 TraceCheckUtils]: 8: Hoare triple {128078#true} ~c_dr_i~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,395 INFO L280 TraceCheckUtils]: 9: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,396 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {128078#true} {128078#true} #337#return; {128078#true} is VALID [2020-07-10 20:32:26,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,412 INFO L280 TraceCheckUtils]: 0: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {128078#true} is VALID [2020-07-10 20:32:26,413 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} ~p_dw_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,413 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} assume 1 == ~c_dr_i~0; {128078#true} is VALID [2020-07-10 20:32:26,413 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} ~c_dr_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,413 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,414 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {128078#true} {128078#true} #355#return; {128078#true} is VALID [2020-07-10 20:32:26,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,417 INFO L280 TraceCheckUtils]: 0: Hoare triple {128078#true} havoc ~__retres1~2; {128078#true} is VALID [2020-07-10 20:32:26,417 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume 0 == ~p_dw_st~0; {128078#true} is VALID [2020-07-10 20:32:26,417 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~__retres1~2 := 1; {128078#true} is VALID [2020-07-10 20:32:26,418 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} #res := ~__retres1~2; {128078#true} is VALID [2020-07-10 20:32:26,418 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,418 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {128078#true} {128078#true} #347#return; {128078#true} is VALID [2020-07-10 20:32:26,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,473 INFO L280 TraceCheckUtils]: 0: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,474 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume !(1 == ~p_dw_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,474 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~__retres1~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,474 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,474 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,475 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,477 INFO L280 TraceCheckUtils]: 0: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,478 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,478 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,478 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,478 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,479 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,479 INFO L280 TraceCheckUtils]: 0: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,479 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} havoc ~tmp___0~0; {128078#true} is VALID [2020-07-10 20:32:26,479 INFO L263 TraceCheckUtils]: 2: Hoare triple {128078#true} call #t~ret0 := is_do_write_p_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,480 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,480 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume !(1 == ~p_dw_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,480 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} ~__retres1~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,480 INFO L280 TraceCheckUtils]: 6: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,480 INFO L280 TraceCheckUtils]: 7: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,481 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,481 INFO L280 TraceCheckUtils]: 9: Hoare triple {128078#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,481 INFO L280 TraceCheckUtils]: 10: Hoare triple {128078#true} ~tmp~0 := #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,481 INFO L280 TraceCheckUtils]: 11: Hoare triple {128078#true} havoc #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,481 INFO L280 TraceCheckUtils]: 12: Hoare triple {128078#true} assume !(0 != ~tmp~0); {128078#true} is VALID [2020-07-10 20:32:26,481 INFO L263 TraceCheckUtils]: 13: Hoare triple {128078#true} call #t~ret1 := is_do_read_c_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,482 INFO L280 TraceCheckUtils]: 14: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,482 INFO L280 TraceCheckUtils]: 15: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,482 INFO L280 TraceCheckUtils]: 16: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,482 INFO L280 TraceCheckUtils]: 17: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,482 INFO L280 TraceCheckUtils]: 18: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,483 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,483 INFO L280 TraceCheckUtils]: 20: Hoare triple {128078#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,483 INFO L280 TraceCheckUtils]: 21: Hoare triple {128078#true} ~tmp___0~0 := #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,483 INFO L280 TraceCheckUtils]: 22: Hoare triple {128078#true} havoc #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,483 INFO L280 TraceCheckUtils]: 23: Hoare triple {128078#true} assume !(0 != ~tmp___0~0); {128078#true} is VALID [2020-07-10 20:32:26,484 INFO L280 TraceCheckUtils]: 24: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,484 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {128078#true} {128078#true} #341#return; {128078#true} is VALID [2020-07-10 20:32:26,484 INFO L280 TraceCheckUtils]: 0: Hoare triple {128202#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {128078#true} is VALID [2020-07-10 20:32:26,485 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume !false; {128078#true} is VALID [2020-07-10 20:32:26,485 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} assume !(0 == ~q_free~0); {128078#true} is VALID [2020-07-10 20:32:26,485 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,485 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} ~q_buf_0~0 := #t~nondet2; {128078#true} is VALID [2020-07-10 20:32:26,485 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} havoc #t~nondet2; {128078#true} is VALID [2020-07-10 20:32:26,485 INFO L280 TraceCheckUtils]: 6: Hoare triple {128078#true} ~p_last_write~0 := ~q_buf_0~0; {128078#true} is VALID [2020-07-10 20:32:26,486 INFO L280 TraceCheckUtils]: 7: Hoare triple {128078#true} ~p_num_write~0 := 1 + ~p_num_write~0; {128078#true} is VALID [2020-07-10 20:32:26,486 INFO L280 TraceCheckUtils]: 8: Hoare triple {128078#true} ~q_free~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,486 INFO L280 TraceCheckUtils]: 9: Hoare triple {128078#true} ~q_write_ev~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,488 INFO L263 TraceCheckUtils]: 10: Hoare triple {128078#true} call immediate_notify_threads(); {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:32:26,488 INFO L280 TraceCheckUtils]: 11: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,488 INFO L280 TraceCheckUtils]: 12: Hoare triple {128078#true} havoc ~tmp___0~0; {128078#true} is VALID [2020-07-10 20:32:26,488 INFO L263 TraceCheckUtils]: 13: Hoare triple {128078#true} call #t~ret0 := is_do_write_p_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,488 INFO L280 TraceCheckUtils]: 14: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,489 INFO L280 TraceCheckUtils]: 15: Hoare triple {128078#true} assume !(1 == ~p_dw_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,489 INFO L280 TraceCheckUtils]: 16: Hoare triple {128078#true} ~__retres1~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,489 INFO L280 TraceCheckUtils]: 17: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,489 INFO L280 TraceCheckUtils]: 18: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,489 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,490 INFO L280 TraceCheckUtils]: 20: Hoare triple {128078#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,490 INFO L280 TraceCheckUtils]: 21: Hoare triple {128078#true} ~tmp~0 := #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,490 INFO L280 TraceCheckUtils]: 22: Hoare triple {128078#true} havoc #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,490 INFO L280 TraceCheckUtils]: 23: Hoare triple {128078#true} assume !(0 != ~tmp~0); {128078#true} is VALID [2020-07-10 20:32:26,490 INFO L263 TraceCheckUtils]: 24: Hoare triple {128078#true} call #t~ret1 := is_do_read_c_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,491 INFO L280 TraceCheckUtils]: 25: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,491 INFO L280 TraceCheckUtils]: 26: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,491 INFO L280 TraceCheckUtils]: 27: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,491 INFO L280 TraceCheckUtils]: 28: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,491 INFO L280 TraceCheckUtils]: 29: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,491 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,492 INFO L280 TraceCheckUtils]: 31: Hoare triple {128078#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,492 INFO L280 TraceCheckUtils]: 32: Hoare triple {128078#true} ~tmp___0~0 := #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,492 INFO L280 TraceCheckUtils]: 33: Hoare triple {128078#true} havoc #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,492 INFO L280 TraceCheckUtils]: 34: Hoare triple {128078#true} assume !(0 != ~tmp___0~0); {128078#true} is VALID [2020-07-10 20:32:26,492 INFO L280 TraceCheckUtils]: 35: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,493 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {128078#true} {128078#true} #341#return; {128078#true} is VALID [2020-07-10 20:32:26,493 INFO L280 TraceCheckUtils]: 37: Hoare triple {128078#true} ~q_write_ev~0 := 2; {128078#true} is VALID [2020-07-10 20:32:26,493 INFO L280 TraceCheckUtils]: 38: Hoare triple {128078#true} assume !false; {128078#true} is VALID [2020-07-10 20:32:26,493 INFO L280 TraceCheckUtils]: 39: Hoare triple {128078#true} assume 0 == ~q_free~0; {128078#true} is VALID [2020-07-10 20:32:26,494 INFO L280 TraceCheckUtils]: 40: Hoare triple {128078#true} ~p_dw_st~0 := 2; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,495 INFO L280 TraceCheckUtils]: 41: Hoare triple {128164#(<= 2 ~p_dw_st~0)} ~p_dw_pc~0 := 1; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,495 INFO L280 TraceCheckUtils]: 42: Hoare triple {128164#(<= 2 ~p_dw_st~0)} assume true; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,496 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {128164#(<= 2 ~p_dw_st~0)} {128078#true} #349#return; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,513 INFO L280 TraceCheckUtils]: 0: Hoare triple {128078#true} havoc ~__retres1~2; {128078#true} is VALID [2020-07-10 20:32:26,514 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume 0 == ~p_dw_st~0; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,514 INFO L280 TraceCheckUtils]: 2: Hoare triple {128241#(<= ~p_dw_st~0 0)} ~__retres1~2 := 1; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,515 INFO L280 TraceCheckUtils]: 3: Hoare triple {128241#(<= ~p_dw_st~0 0)} #res := ~__retres1~2; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,515 INFO L280 TraceCheckUtils]: 4: Hoare triple {128241#(<= ~p_dw_st~0 0)} assume true; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,516 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {128241#(<= ~p_dw_st~0 0)} {128164#(<= 2 ~p_dw_st~0)} #347#return; {128079#false} is VALID [2020-07-10 20:32:26,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,524 INFO L280 TraceCheckUtils]: 0: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,525 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume 1 == ~p_dw_pc~0; {128078#true} is VALID [2020-07-10 20:32:26,525 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} assume 1 == ~q_read_ev~0; {128078#true} is VALID [2020-07-10 20:32:26,525 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} ~__retres1~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,525 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,526 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,526 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:32:26,528 INFO L280 TraceCheckUtils]: 0: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,528 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,529 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,529 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,529 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,529 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,530 INFO L280 TraceCheckUtils]: 0: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,530 INFO L280 TraceCheckUtils]: 1: Hoare triple {128078#true} havoc ~tmp___0~0; {128078#true} is VALID [2020-07-10 20:32:26,530 INFO L263 TraceCheckUtils]: 2: Hoare triple {128078#true} call #t~ret0 := is_do_write_p_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,530 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,530 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} assume 1 == ~p_dw_pc~0; {128078#true} is VALID [2020-07-10 20:32:26,530 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} assume 1 == ~q_read_ev~0; {128078#true} is VALID [2020-07-10 20:32:26,531 INFO L280 TraceCheckUtils]: 6: Hoare triple {128078#true} ~__retres1~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,531 INFO L280 TraceCheckUtils]: 7: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,531 INFO L280 TraceCheckUtils]: 8: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,531 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,531 INFO L280 TraceCheckUtils]: 10: Hoare triple {128078#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,532 INFO L280 TraceCheckUtils]: 11: Hoare triple {128078#true} ~tmp~0 := #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,532 INFO L280 TraceCheckUtils]: 12: Hoare triple {128078#true} havoc #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,532 INFO L280 TraceCheckUtils]: 13: Hoare triple {128078#true} assume 0 != ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,532 INFO L280 TraceCheckUtils]: 14: Hoare triple {128078#true} ~p_dw_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,532 INFO L263 TraceCheckUtils]: 15: Hoare triple {128078#true} call #t~ret1 := is_do_read_c_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,533 INFO L280 TraceCheckUtils]: 16: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,533 INFO L280 TraceCheckUtils]: 17: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,533 INFO L280 TraceCheckUtils]: 18: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,533 INFO L280 TraceCheckUtils]: 19: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,533 INFO L280 TraceCheckUtils]: 20: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,533 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,534 INFO L280 TraceCheckUtils]: 22: Hoare triple {128078#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,534 INFO L280 TraceCheckUtils]: 23: Hoare triple {128078#true} ~tmp___0~0 := #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,534 INFO L280 TraceCheckUtils]: 24: Hoare triple {128078#true} havoc #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,534 INFO L280 TraceCheckUtils]: 25: Hoare triple {128078#true} assume !(0 != ~tmp___0~0); {128078#true} is VALID [2020-07-10 20:32:26,534 INFO L280 TraceCheckUtils]: 26: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,535 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {128078#true} {128079#false} #365#return; {128079#false} is VALID [2020-07-10 20:32:26,537 INFO L263 TraceCheckUtils]: 0: Hoare triple {128078#true} call ULTIMATE.init(); {128199#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:32:26,537 INFO L280 TraceCheckUtils]: 1: Hoare triple {128199#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,538 INFO L280 TraceCheckUtils]: 2: Hoare triple {128078#true} ~q_free~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,538 INFO L280 TraceCheckUtils]: 3: Hoare triple {128078#true} ~q_read_ev~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,538 INFO L280 TraceCheckUtils]: 4: Hoare triple {128078#true} ~q_write_ev~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,538 INFO L280 TraceCheckUtils]: 5: Hoare triple {128078#true} ~p_num_write~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,538 INFO L280 TraceCheckUtils]: 6: Hoare triple {128078#true} ~p_last_write~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,539 INFO L280 TraceCheckUtils]: 7: Hoare triple {128078#true} ~p_dw_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,539 INFO L280 TraceCheckUtils]: 8: Hoare triple {128078#true} ~p_dw_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,539 INFO L280 TraceCheckUtils]: 9: Hoare triple {128078#true} ~p_dw_i~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,539 INFO L280 TraceCheckUtils]: 10: Hoare triple {128078#true} ~c_num_read~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,539 INFO L280 TraceCheckUtils]: 11: Hoare triple {128078#true} ~c_last_read~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,539 INFO L280 TraceCheckUtils]: 12: Hoare triple {128078#true} ~c_dr_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,540 INFO L280 TraceCheckUtils]: 13: Hoare triple {128078#true} ~c_dr_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,540 INFO L280 TraceCheckUtils]: 14: Hoare triple {128078#true} ~c_dr_i~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,540 INFO L280 TraceCheckUtils]: 15: Hoare triple {128078#true} ~a_t~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,540 INFO L280 TraceCheckUtils]: 16: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,540 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {128078#true} {128078#true} #361#return; {128078#true} is VALID [2020-07-10 20:32:26,540 INFO L263 TraceCheckUtils]: 18: Hoare triple {128078#true} call #t~ret8 := main(); {128078#true} is VALID [2020-07-10 20:32:26,541 INFO L280 TraceCheckUtils]: 19: Hoare triple {128078#true} havoc ~__retres1~3; {128078#true} is VALID [2020-07-10 20:32:26,542 INFO L263 TraceCheckUtils]: 20: Hoare triple {128078#true} call init_model(); {128200#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:32:26,542 INFO L280 TraceCheckUtils]: 21: Hoare triple {128200#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,542 INFO L280 TraceCheckUtils]: 22: Hoare triple {128078#true} ~q_write_ev~0 := 2; {128078#true} is VALID [2020-07-10 20:32:26,542 INFO L280 TraceCheckUtils]: 23: Hoare triple {128078#true} ~q_read_ev~0 := ~q_write_ev~0; {128078#true} is VALID [2020-07-10 20:32:26,542 INFO L280 TraceCheckUtils]: 24: Hoare triple {128078#true} ~p_num_write~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,543 INFO L280 TraceCheckUtils]: 25: Hoare triple {128078#true} ~p_dw_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,543 INFO L280 TraceCheckUtils]: 26: Hoare triple {128078#true} ~p_dw_i~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,543 INFO L280 TraceCheckUtils]: 27: Hoare triple {128078#true} ~c_num_read~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,543 INFO L280 TraceCheckUtils]: 28: Hoare triple {128078#true} ~c_dr_pc~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,543 INFO L280 TraceCheckUtils]: 29: Hoare triple {128078#true} ~c_dr_i~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,543 INFO L280 TraceCheckUtils]: 30: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,544 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {128078#true} {128078#true} #337#return; {128078#true} is VALID [2020-07-10 20:32:26,544 INFO L263 TraceCheckUtils]: 32: Hoare triple {128078#true} call start_simulation(); {128078#true} is VALID [2020-07-10 20:32:26,544 INFO L280 TraceCheckUtils]: 33: Hoare triple {128078#true} havoc ~kernel_st~0; {128078#true} is VALID [2020-07-10 20:32:26,544 INFO L280 TraceCheckUtils]: 34: Hoare triple {128078#true} havoc ~tmp~3; {128078#true} is VALID [2020-07-10 20:32:26,544 INFO L280 TraceCheckUtils]: 35: Hoare triple {128078#true} ~kernel_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,545 INFO L263 TraceCheckUtils]: 36: Hoare triple {128078#true} call init_threads(); {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:32:26,545 INFO L280 TraceCheckUtils]: 37: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {128078#true} is VALID [2020-07-10 20:32:26,545 INFO L280 TraceCheckUtils]: 38: Hoare triple {128078#true} ~p_dw_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,545 INFO L280 TraceCheckUtils]: 39: Hoare triple {128078#true} assume 1 == ~c_dr_i~0; {128078#true} is VALID [2020-07-10 20:32:26,546 INFO L280 TraceCheckUtils]: 40: Hoare triple {128078#true} ~c_dr_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,546 INFO L280 TraceCheckUtils]: 41: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,546 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {128078#true} {128078#true} #355#return; {128078#true} is VALID [2020-07-10 20:32:26,546 INFO L280 TraceCheckUtils]: 43: Hoare triple {128078#true} assume !false; {128078#true} is VALID [2020-07-10 20:32:26,546 INFO L280 TraceCheckUtils]: 44: Hoare triple {128078#true} ~kernel_st~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,547 INFO L263 TraceCheckUtils]: 45: Hoare triple {128078#true} call eval(); {128078#true} is VALID [2020-07-10 20:32:26,547 INFO L280 TraceCheckUtils]: 46: Hoare triple {128078#true} havoc ~tmp~1; {128078#true} is VALID [2020-07-10 20:32:26,547 INFO L280 TraceCheckUtils]: 47: Hoare triple {128078#true} havoc ~tmp___0~1; {128078#true} is VALID [2020-07-10 20:32:26,547 INFO L280 TraceCheckUtils]: 48: Hoare triple {128078#true} havoc ~tmp___1~0; {128078#true} is VALID [2020-07-10 20:32:26,547 INFO L280 TraceCheckUtils]: 49: Hoare triple {128078#true} assume !false; {128078#true} is VALID [2020-07-10 20:32:26,547 INFO L263 TraceCheckUtils]: 50: Hoare triple {128078#true} call #t~ret3 := exists_runnable_thread(); {128078#true} is VALID [2020-07-10 20:32:26,548 INFO L280 TraceCheckUtils]: 51: Hoare triple {128078#true} havoc ~__retres1~2; {128078#true} is VALID [2020-07-10 20:32:26,548 INFO L280 TraceCheckUtils]: 52: Hoare triple {128078#true} assume 0 == ~p_dw_st~0; {128078#true} is VALID [2020-07-10 20:32:26,548 INFO L280 TraceCheckUtils]: 53: Hoare triple {128078#true} ~__retres1~2 := 1; {128078#true} is VALID [2020-07-10 20:32:26,548 INFO L280 TraceCheckUtils]: 54: Hoare triple {128078#true} #res := ~__retres1~2; {128078#true} is VALID [2020-07-10 20:32:26,548 INFO L280 TraceCheckUtils]: 55: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,549 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {128078#true} {128078#true} #347#return; {128078#true} is VALID [2020-07-10 20:32:26,549 INFO L280 TraceCheckUtils]: 57: Hoare triple {128078#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,549 INFO L280 TraceCheckUtils]: 58: Hoare triple {128078#true} ~tmp___1~0 := #t~ret3; {128078#true} is VALID [2020-07-10 20:32:26,549 INFO L280 TraceCheckUtils]: 59: Hoare triple {128078#true} havoc #t~ret3; {128078#true} is VALID [2020-07-10 20:32:26,549 INFO L280 TraceCheckUtils]: 60: Hoare triple {128078#true} assume 0 != ~tmp___1~0; {128078#true} is VALID [2020-07-10 20:32:26,550 INFO L280 TraceCheckUtils]: 61: Hoare triple {128078#true} assume 0 == ~p_dw_st~0; {128078#true} is VALID [2020-07-10 20:32:26,550 INFO L280 TraceCheckUtils]: 62: Hoare triple {128078#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,550 INFO L280 TraceCheckUtils]: 63: Hoare triple {128078#true} ~tmp~1 := #t~nondet4; {128078#true} is VALID [2020-07-10 20:32:26,550 INFO L280 TraceCheckUtils]: 64: Hoare triple {128078#true} havoc #t~nondet4; {128078#true} is VALID [2020-07-10 20:32:26,550 INFO L280 TraceCheckUtils]: 65: Hoare triple {128078#true} assume 0 != ~tmp~1; {128078#true} is VALID [2020-07-10 20:32:26,550 INFO L280 TraceCheckUtils]: 66: Hoare triple {128078#true} ~p_dw_st~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,552 INFO L263 TraceCheckUtils]: 67: Hoare triple {128078#true} call do_write_p(); {128202#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:32:26,552 INFO L280 TraceCheckUtils]: 68: Hoare triple {128202#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {128078#true} is VALID [2020-07-10 20:32:26,552 INFO L280 TraceCheckUtils]: 69: Hoare triple {128078#true} assume !false; {128078#true} is VALID [2020-07-10 20:32:26,552 INFO L280 TraceCheckUtils]: 70: Hoare triple {128078#true} assume !(0 == ~q_free~0); {128078#true} is VALID [2020-07-10 20:32:26,553 INFO L280 TraceCheckUtils]: 71: Hoare triple {128078#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,553 INFO L280 TraceCheckUtils]: 72: Hoare triple {128078#true} ~q_buf_0~0 := #t~nondet2; {128078#true} is VALID [2020-07-10 20:32:26,553 INFO L280 TraceCheckUtils]: 73: Hoare triple {128078#true} havoc #t~nondet2; {128078#true} is VALID [2020-07-10 20:32:26,553 INFO L280 TraceCheckUtils]: 74: Hoare triple {128078#true} ~p_last_write~0 := ~q_buf_0~0; {128078#true} is VALID [2020-07-10 20:32:26,553 INFO L280 TraceCheckUtils]: 75: Hoare triple {128078#true} ~p_num_write~0 := 1 + ~p_num_write~0; {128078#true} is VALID [2020-07-10 20:32:26,554 INFO L280 TraceCheckUtils]: 76: Hoare triple {128078#true} ~q_free~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,554 INFO L280 TraceCheckUtils]: 77: Hoare triple {128078#true} ~q_write_ev~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,554 INFO L263 TraceCheckUtils]: 78: Hoare triple {128078#true} call immediate_notify_threads(); {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:32:26,555 INFO L280 TraceCheckUtils]: 79: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,555 INFO L280 TraceCheckUtils]: 80: Hoare triple {128078#true} havoc ~tmp___0~0; {128078#true} is VALID [2020-07-10 20:32:26,555 INFO L263 TraceCheckUtils]: 81: Hoare triple {128078#true} call #t~ret0 := is_do_write_p_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,555 INFO L280 TraceCheckUtils]: 82: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,555 INFO L280 TraceCheckUtils]: 83: Hoare triple {128078#true} assume !(1 == ~p_dw_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,556 INFO L280 TraceCheckUtils]: 84: Hoare triple {128078#true} ~__retres1~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,556 INFO L280 TraceCheckUtils]: 85: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,556 INFO L280 TraceCheckUtils]: 86: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,556 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,556 INFO L280 TraceCheckUtils]: 88: Hoare triple {128078#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,556 INFO L280 TraceCheckUtils]: 89: Hoare triple {128078#true} ~tmp~0 := #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,557 INFO L280 TraceCheckUtils]: 90: Hoare triple {128078#true} havoc #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,557 INFO L280 TraceCheckUtils]: 91: Hoare triple {128078#true} assume !(0 != ~tmp~0); {128078#true} is VALID [2020-07-10 20:32:26,557 INFO L263 TraceCheckUtils]: 92: Hoare triple {128078#true} call #t~ret1 := is_do_read_c_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,557 INFO L280 TraceCheckUtils]: 93: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,557 INFO L280 TraceCheckUtils]: 94: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,558 INFO L280 TraceCheckUtils]: 95: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,558 INFO L280 TraceCheckUtils]: 96: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,558 INFO L280 TraceCheckUtils]: 97: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,558 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,558 INFO L280 TraceCheckUtils]: 99: Hoare triple {128078#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,558 INFO L280 TraceCheckUtils]: 100: Hoare triple {128078#true} ~tmp___0~0 := #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,559 INFO L280 TraceCheckUtils]: 101: Hoare triple {128078#true} havoc #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,559 INFO L280 TraceCheckUtils]: 102: Hoare triple {128078#true} assume !(0 != ~tmp___0~0); {128078#true} is VALID [2020-07-10 20:32:26,559 INFO L280 TraceCheckUtils]: 103: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,559 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {128078#true} {128078#true} #341#return; {128078#true} is VALID [2020-07-10 20:32:26,559 INFO L280 TraceCheckUtils]: 105: Hoare triple {128078#true} ~q_write_ev~0 := 2; {128078#true} is VALID [2020-07-10 20:32:26,560 INFO L280 TraceCheckUtils]: 106: Hoare triple {128078#true} assume !false; {128078#true} is VALID [2020-07-10 20:32:26,560 INFO L280 TraceCheckUtils]: 107: Hoare triple {128078#true} assume 0 == ~q_free~0; {128078#true} is VALID [2020-07-10 20:32:26,561 INFO L280 TraceCheckUtils]: 108: Hoare triple {128078#true} ~p_dw_st~0 := 2; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,561 INFO L280 TraceCheckUtils]: 109: Hoare triple {128164#(<= 2 ~p_dw_st~0)} ~p_dw_pc~0 := 1; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,561 INFO L280 TraceCheckUtils]: 110: Hoare triple {128164#(<= 2 ~p_dw_st~0)} assume true; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,562 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {128164#(<= 2 ~p_dw_st~0)} {128078#true} #349#return; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,562 INFO L280 TraceCheckUtils]: 112: Hoare triple {128164#(<= 2 ~p_dw_st~0)} assume !(0 == ~c_dr_st~0); {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,563 INFO L280 TraceCheckUtils]: 113: Hoare triple {128164#(<= 2 ~p_dw_st~0)} assume !false; {128164#(<= 2 ~p_dw_st~0)} is VALID [2020-07-10 20:32:26,563 INFO L263 TraceCheckUtils]: 114: Hoare triple {128164#(<= 2 ~p_dw_st~0)} call #t~ret3 := exists_runnable_thread(); {128078#true} is VALID [2020-07-10 20:32:26,563 INFO L280 TraceCheckUtils]: 115: Hoare triple {128078#true} havoc ~__retres1~2; {128078#true} is VALID [2020-07-10 20:32:26,564 INFO L280 TraceCheckUtils]: 116: Hoare triple {128078#true} assume 0 == ~p_dw_st~0; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,564 INFO L280 TraceCheckUtils]: 117: Hoare triple {128241#(<= ~p_dw_st~0 0)} ~__retres1~2 := 1; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,565 INFO L280 TraceCheckUtils]: 118: Hoare triple {128241#(<= ~p_dw_st~0 0)} #res := ~__retres1~2; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,565 INFO L280 TraceCheckUtils]: 119: Hoare triple {128241#(<= ~p_dw_st~0 0)} assume true; {128241#(<= ~p_dw_st~0 0)} is VALID [2020-07-10 20:32:26,566 INFO L275 TraceCheckUtils]: 120: Hoare quadruple {128241#(<= ~p_dw_st~0 0)} {128164#(<= 2 ~p_dw_st~0)} #347#return; {128079#false} is VALID [2020-07-10 20:32:26,566 INFO L280 TraceCheckUtils]: 121: Hoare triple {128079#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {128079#false} is VALID [2020-07-10 20:32:26,566 INFO L280 TraceCheckUtils]: 122: Hoare triple {128079#false} ~tmp___1~0 := #t~ret3; {128079#false} is VALID [2020-07-10 20:32:26,567 INFO L280 TraceCheckUtils]: 123: Hoare triple {128079#false} havoc #t~ret3; {128079#false} is VALID [2020-07-10 20:32:26,567 INFO L280 TraceCheckUtils]: 124: Hoare triple {128079#false} assume 0 != ~tmp___1~0; {128079#false} is VALID [2020-07-10 20:32:26,567 INFO L280 TraceCheckUtils]: 125: Hoare triple {128079#false} assume 0 == ~p_dw_st~0; {128079#false} is VALID [2020-07-10 20:32:26,567 INFO L280 TraceCheckUtils]: 126: Hoare triple {128079#false} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {128079#false} is VALID [2020-07-10 20:32:26,567 INFO L280 TraceCheckUtils]: 127: Hoare triple {128079#false} ~tmp~1 := #t~nondet4; {128079#false} is VALID [2020-07-10 20:32:26,567 INFO L280 TraceCheckUtils]: 128: Hoare triple {128079#false} havoc #t~nondet4; {128079#false} is VALID [2020-07-10 20:32:26,568 INFO L280 TraceCheckUtils]: 129: Hoare triple {128079#false} assume !(0 != ~tmp~1); {128079#false} is VALID [2020-07-10 20:32:26,568 INFO L280 TraceCheckUtils]: 130: Hoare triple {128079#false} assume 0 == ~c_dr_st~0; {128079#false} is VALID [2020-07-10 20:32:26,568 INFO L280 TraceCheckUtils]: 131: Hoare triple {128079#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {128079#false} is VALID [2020-07-10 20:32:26,568 INFO L280 TraceCheckUtils]: 132: Hoare triple {128079#false} ~tmp___0~1 := #t~nondet5; {128079#false} is VALID [2020-07-10 20:32:26,568 INFO L280 TraceCheckUtils]: 133: Hoare triple {128079#false} havoc #t~nondet5; {128079#false} is VALID [2020-07-10 20:32:26,568 INFO L280 TraceCheckUtils]: 134: Hoare triple {128079#false} assume 0 != ~tmp___0~1; {128079#false} is VALID [2020-07-10 20:32:26,569 INFO L280 TraceCheckUtils]: 135: Hoare triple {128079#false} ~c_dr_st~0 := 1; {128079#false} is VALID [2020-07-10 20:32:26,569 INFO L263 TraceCheckUtils]: 136: Hoare triple {128079#false} call do_read_c(); {128079#false} is VALID [2020-07-10 20:32:26,569 INFO L280 TraceCheckUtils]: 137: Hoare triple {128079#false} havoc ~a~0; {128079#false} is VALID [2020-07-10 20:32:26,569 INFO L280 TraceCheckUtils]: 138: Hoare triple {128079#false} assume 0 == ~c_dr_pc~0; {128079#false} is VALID [2020-07-10 20:32:26,569 INFO L280 TraceCheckUtils]: 139: Hoare triple {128079#false} assume !false; {128079#false} is VALID [2020-07-10 20:32:26,570 INFO L280 TraceCheckUtils]: 140: Hoare triple {128079#false} assume !(1 == ~q_free~0); {128079#false} is VALID [2020-07-10 20:32:26,570 INFO L280 TraceCheckUtils]: 141: Hoare triple {128079#false} ~a~0 := ~q_buf_0~0; {128079#false} is VALID [2020-07-10 20:32:26,570 INFO L280 TraceCheckUtils]: 142: Hoare triple {128079#false} ~c_last_read~0 := ~a~0; {128079#false} is VALID [2020-07-10 20:32:26,570 INFO L280 TraceCheckUtils]: 143: Hoare triple {128079#false} ~c_num_read~0 := 1 + ~c_num_read~0; {128079#false} is VALID [2020-07-10 20:32:26,570 INFO L280 TraceCheckUtils]: 144: Hoare triple {128079#false} ~q_free~0 := 1; {128079#false} is VALID [2020-07-10 20:32:26,570 INFO L280 TraceCheckUtils]: 145: Hoare triple {128079#false} ~q_read_ev~0 := 1; {128079#false} is VALID [2020-07-10 20:32:26,571 INFO L263 TraceCheckUtils]: 146: Hoare triple {128079#false} call immediate_notify_threads(); {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:32:26,571 INFO L280 TraceCheckUtils]: 147: Hoare triple {128201#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,571 INFO L280 TraceCheckUtils]: 148: Hoare triple {128078#true} havoc ~tmp___0~0; {128078#true} is VALID [2020-07-10 20:32:26,571 INFO L263 TraceCheckUtils]: 149: Hoare triple {128078#true} call #t~ret0 := is_do_write_p_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,571 INFO L280 TraceCheckUtils]: 150: Hoare triple {128078#true} havoc ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,571 INFO L280 TraceCheckUtils]: 151: Hoare triple {128078#true} assume 1 == ~p_dw_pc~0; {128078#true} is VALID [2020-07-10 20:32:26,572 INFO L280 TraceCheckUtils]: 152: Hoare triple {128078#true} assume 1 == ~q_read_ev~0; {128078#true} is VALID [2020-07-10 20:32:26,572 INFO L280 TraceCheckUtils]: 153: Hoare triple {128078#true} ~__retres1~0 := 1; {128078#true} is VALID [2020-07-10 20:32:26,572 INFO L280 TraceCheckUtils]: 154: Hoare triple {128078#true} #res := ~__retres1~0; {128078#true} is VALID [2020-07-10 20:32:26,572 INFO L280 TraceCheckUtils]: 155: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,572 INFO L275 TraceCheckUtils]: 156: Hoare quadruple {128078#true} {128078#true} #343#return; {128078#true} is VALID [2020-07-10 20:32:26,573 INFO L280 TraceCheckUtils]: 157: Hoare triple {128078#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,573 INFO L280 TraceCheckUtils]: 158: Hoare triple {128078#true} ~tmp~0 := #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,573 INFO L280 TraceCheckUtils]: 159: Hoare triple {128078#true} havoc #t~ret0; {128078#true} is VALID [2020-07-10 20:32:26,573 INFO L280 TraceCheckUtils]: 160: Hoare triple {128078#true} assume 0 != ~tmp~0; {128078#true} is VALID [2020-07-10 20:32:26,573 INFO L280 TraceCheckUtils]: 161: Hoare triple {128078#true} ~p_dw_st~0 := 0; {128078#true} is VALID [2020-07-10 20:32:26,573 INFO L263 TraceCheckUtils]: 162: Hoare triple {128078#true} call #t~ret1 := is_do_read_c_triggered(); {128078#true} is VALID [2020-07-10 20:32:26,574 INFO L280 TraceCheckUtils]: 163: Hoare triple {128078#true} havoc ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,574 INFO L280 TraceCheckUtils]: 164: Hoare triple {128078#true} assume !(1 == ~c_dr_pc~0); {128078#true} is VALID [2020-07-10 20:32:26,574 INFO L280 TraceCheckUtils]: 165: Hoare triple {128078#true} ~__retres1~1 := 0; {128078#true} is VALID [2020-07-10 20:32:26,574 INFO L280 TraceCheckUtils]: 166: Hoare triple {128078#true} #res := ~__retres1~1; {128078#true} is VALID [2020-07-10 20:32:26,574 INFO L280 TraceCheckUtils]: 167: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,575 INFO L275 TraceCheckUtils]: 168: Hoare quadruple {128078#true} {128078#true} #345#return; {128078#true} is VALID [2020-07-10 20:32:26,575 INFO L280 TraceCheckUtils]: 169: Hoare triple {128078#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {128078#true} is VALID [2020-07-10 20:32:26,575 INFO L280 TraceCheckUtils]: 170: Hoare triple {128078#true} ~tmp___0~0 := #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,575 INFO L280 TraceCheckUtils]: 171: Hoare triple {128078#true} havoc #t~ret1; {128078#true} is VALID [2020-07-10 20:32:26,575 INFO L280 TraceCheckUtils]: 172: Hoare triple {128078#true} assume !(0 != ~tmp___0~0); {128078#true} is VALID [2020-07-10 20:32:26,575 INFO L280 TraceCheckUtils]: 173: Hoare triple {128078#true} assume true; {128078#true} is VALID [2020-07-10 20:32:26,576 INFO L275 TraceCheckUtils]: 174: Hoare quadruple {128078#true} {128079#false} #365#return; {128079#false} is VALID [2020-07-10 20:32:26,576 INFO L280 TraceCheckUtils]: 175: Hoare triple {128079#false} ~q_read_ev~0 := 2; {128079#false} is VALID [2020-07-10 20:32:26,576 INFO L280 TraceCheckUtils]: 176: Hoare triple {128079#false} assume !(~p_last_write~0 == ~c_last_read~0); {128079#false} is VALID [2020-07-10 20:32:26,576 INFO L263 TraceCheckUtils]: 177: Hoare triple {128079#false} call error(); {128079#false} is VALID [2020-07-10 20:32:26,576 INFO L280 TraceCheckUtils]: 178: Hoare triple {128079#false} assume !false; {128079#false} is VALID [2020-07-10 20:32:26,597 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:32:26,597 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:32:26,598 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [148608739] [2020-07-10 20:32:26,598 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:32:26,598 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-10 20:32:26,603 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1656531177] [2020-07-10 20:32:26,605 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 179 [2020-07-10 20:32:26,608 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:32:26,609 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-10 20:32:26,739 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:32:26,740 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-10 20:32:26,740 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:32:26,740 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-10 20:32:26,740 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-10 20:32:26,741 INFO L87 Difference]: Start difference. First operand 4321 states and 6072 transitions. Second operand 8 states. [2020-07-10 20:32:49,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:32:49,873 INFO L93 Difference]: Finished difference Result 5564 states and 7690 transitions. [2020-07-10 20:32:49,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-10 20:32:49,874 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 179 [2020-07-10 20:32:49,874 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:32:49,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 20:32:49,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 569 transitions. [2020-07-10 20:32:49,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 20:32:49,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 569 transitions. [2020-07-10 20:32:49,884 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 569 transitions. [2020-07-10 20:32:50,703 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 569 edges. 569 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:32:50,835 INFO L225 Difference]: With dead ends: 5564 [2020-07-10 20:32:50,835 INFO L226 Difference]: Without dead ends: 1732 [2020-07-10 20:32:50,849 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=76, Invalid=196, Unknown=0, NotChecked=0, Total=272 [2020-07-10 20:32:50,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1732 states. [2020-07-10 20:33:04,924 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1732 to 1634. [2020-07-10 20:33:04,925 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:33:04,925 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1732 states. Second operand 1634 states. [2020-07-10 20:33:04,925 INFO L74 IsIncluded]: Start isIncluded. First operand 1732 states. Second operand 1634 states. [2020-07-10 20:33:04,925 INFO L87 Difference]: Start difference. First operand 1732 states. Second operand 1634 states. [2020-07-10 20:33:05,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:33:05,032 INFO L93 Difference]: Finished difference Result 1732 states and 2030 transitions. [2020-07-10 20:33:05,033 INFO L276 IsEmpty]: Start isEmpty. Operand 1732 states and 2030 transitions. [2020-07-10 20:33:05,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:33:05,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:33:05,036 INFO L74 IsIncluded]: Start isIncluded. First operand 1634 states. Second operand 1732 states. [2020-07-10 20:33:05,036 INFO L87 Difference]: Start difference. First operand 1634 states. Second operand 1732 states. [2020-07-10 20:33:05,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:33:05,135 INFO L93 Difference]: Finished difference Result 1732 states and 2030 transitions. [2020-07-10 20:33:05,135 INFO L276 IsEmpty]: Start isEmpty. Operand 1732 states and 2030 transitions. [2020-07-10 20:33:05,137 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:33:05,137 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:33:05,137 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:33:05,137 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:33:05,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 1634 states. [2020-07-10 20:33:05,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1634 states to 1634 states and 1911 transitions. [2020-07-10 20:33:05,227 INFO L78 Accepts]: Start accepts. Automaton has 1634 states and 1911 transitions. Word has length 179 [2020-07-10 20:33:05,227 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:33:05,228 INFO L479 AbstractCegarLoop]: Abstraction has 1634 states and 1911 transitions. [2020-07-10 20:33:05,228 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-10 20:33:05,228 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 1634 states and 1911 transitions. [2020-07-10 20:33:10,498 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 1911 edges. 1911 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:33:10,498 INFO L276 IsEmpty]: Start isEmpty. Operand 1634 states and 1911 transitions. [2020-07-10 20:33:10,500 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 162 [2020-07-10 20:33:10,500 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:33:10,501 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:33:10,501 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-10 20:33:10,501 INFO L427 AbstractCegarLoop]: === Iteration 10 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:33:10,501 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:33:10,501 INFO L82 PathProgramCache]: Analyzing trace with hash 709880479, now seen corresponding path program 1 times [2020-07-10 20:33:10,501 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:33:10,501 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1415218393] [2020-07-10 20:33:10,502 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:33:10,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,699 INFO L280 TraceCheckUtils]: 0: Hoare triple {146255#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,700 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} ~q_free~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,700 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~q_read_ev~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,700 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} ~q_write_ev~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,700 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} ~p_num_write~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,701 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} ~p_last_write~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,701 INFO L280 TraceCheckUtils]: 6: Hoare triple {146138#true} ~p_dw_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,701 INFO L280 TraceCheckUtils]: 7: Hoare triple {146138#true} ~p_dw_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,702 INFO L280 TraceCheckUtils]: 8: Hoare triple {146138#true} ~p_dw_i~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,702 INFO L280 TraceCheckUtils]: 9: Hoare triple {146138#true} ~c_num_read~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,703 INFO L280 TraceCheckUtils]: 10: Hoare triple {146138#true} ~c_last_read~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,703 INFO L280 TraceCheckUtils]: 11: Hoare triple {146138#true} ~c_dr_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,703 INFO L280 TraceCheckUtils]: 12: Hoare triple {146138#true} ~c_dr_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,703 INFO L280 TraceCheckUtils]: 13: Hoare triple {146138#true} ~c_dr_i~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,703 INFO L280 TraceCheckUtils]: 14: Hoare triple {146138#true} ~a_t~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,703 INFO L280 TraceCheckUtils]: 15: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,704 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {146138#true} {146138#true} #361#return; {146138#true} is VALID [2020-07-10 20:33:10,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,735 INFO L280 TraceCheckUtils]: 0: Hoare triple {146256#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,736 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} ~q_write_ev~0 := 2; {146138#true} is VALID [2020-07-10 20:33:10,736 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~q_read_ev~0 := ~q_write_ev~0; {146138#true} is VALID [2020-07-10 20:33:10,736 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} ~p_num_write~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,736 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} ~p_dw_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,737 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} ~p_dw_i~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,737 INFO L280 TraceCheckUtils]: 6: Hoare triple {146138#true} ~c_num_read~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,737 INFO L280 TraceCheckUtils]: 7: Hoare triple {146138#true} ~c_dr_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,737 INFO L280 TraceCheckUtils]: 8: Hoare triple {146138#true} ~c_dr_i~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,737 INFO L280 TraceCheckUtils]: 9: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,738 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {146138#true} {146138#true} #337#return; {146138#true} is VALID [2020-07-10 20:33:10,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,756 INFO L280 TraceCheckUtils]: 0: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {146138#true} is VALID [2020-07-10 20:33:10,757 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} ~p_dw_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,757 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} assume 1 == ~c_dr_i~0; {146138#true} is VALID [2020-07-10 20:33:10,757 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} ~c_dr_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,757 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,758 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {146138#true} {146138#true} #355#return; {146138#true} is VALID [2020-07-10 20:33:10,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,761 INFO L280 TraceCheckUtils]: 0: Hoare triple {146138#true} havoc ~__retres1~2; {146138#true} is VALID [2020-07-10 20:33:10,761 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} assume 0 == ~p_dw_st~0; {146138#true} is VALID [2020-07-10 20:33:10,761 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~__retres1~2 := 1; {146138#true} is VALID [2020-07-10 20:33:10,761 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} #res := ~__retres1~2; {146138#true} is VALID [2020-07-10 20:33:10,762 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,762 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {146138#true} {146138#true} #347#return; {146138#true} is VALID [2020-07-10 20:33:10,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,820 INFO L280 TraceCheckUtils]: 0: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,820 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} assume !(1 == ~p_dw_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,820 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~__retres1~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,821 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,821 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,821 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,824 INFO L280 TraceCheckUtils]: 0: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,824 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,825 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,825 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,825 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,825 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,826 INFO L280 TraceCheckUtils]: 0: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,826 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} havoc ~tmp___0~0; {146138#true} is VALID [2020-07-10 20:33:10,826 INFO L263 TraceCheckUtils]: 2: Hoare triple {146138#true} call #t~ret0 := is_do_write_p_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,826 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,826 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume !(1 == ~p_dw_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,827 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} ~__retres1~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,827 INFO L280 TraceCheckUtils]: 6: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,827 INFO L280 TraceCheckUtils]: 7: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,827 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,827 INFO L280 TraceCheckUtils]: 9: Hoare triple {146138#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,828 INFO L280 TraceCheckUtils]: 10: Hoare triple {146138#true} ~tmp~0 := #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,828 INFO L280 TraceCheckUtils]: 11: Hoare triple {146138#true} havoc #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,828 INFO L280 TraceCheckUtils]: 12: Hoare triple {146138#true} assume !(0 != ~tmp~0); {146138#true} is VALID [2020-07-10 20:33:10,828 INFO L263 TraceCheckUtils]: 13: Hoare triple {146138#true} call #t~ret1 := is_do_read_c_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,828 INFO L280 TraceCheckUtils]: 14: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,829 INFO L280 TraceCheckUtils]: 15: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,829 INFO L280 TraceCheckUtils]: 16: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,829 INFO L280 TraceCheckUtils]: 17: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,829 INFO L280 TraceCheckUtils]: 18: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,830 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,830 INFO L280 TraceCheckUtils]: 20: Hoare triple {146138#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,830 INFO L280 TraceCheckUtils]: 21: Hoare triple {146138#true} ~tmp___0~0 := #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,830 INFO L280 TraceCheckUtils]: 22: Hoare triple {146138#true} havoc #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,830 INFO L280 TraceCheckUtils]: 23: Hoare triple {146138#true} assume !(0 != ~tmp___0~0); {146138#true} is VALID [2020-07-10 20:33:10,831 INFO L280 TraceCheckUtils]: 24: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,832 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {146138#true} {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} #341#return; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,832 INFO L280 TraceCheckUtils]: 0: Hoare triple {146258#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {146138#true} is VALID [2020-07-10 20:33:10,832 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} assume !false; {146138#true} is VALID [2020-07-10 20:33:10,833 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} assume !(0 == ~q_free~0); {146138#true} is VALID [2020-07-10 20:33:10,833 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,833 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} ~q_buf_0~0 := #t~nondet2; {146138#true} is VALID [2020-07-10 20:33:10,833 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} havoc #t~nondet2; {146138#true} is VALID [2020-07-10 20:33:10,834 INFO L280 TraceCheckUtils]: 6: Hoare triple {146138#true} ~p_last_write~0 := ~q_buf_0~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,835 INFO L280 TraceCheckUtils]: 7: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~p_num_write~0 := 1 + ~p_num_write~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,835 INFO L280 TraceCheckUtils]: 8: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~q_free~0 := 0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,836 INFO L280 TraceCheckUtils]: 9: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~q_write_ev~0 := 1; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,837 INFO L263 TraceCheckUtils]: 10: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} call immediate_notify_threads(); {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:10,837 INFO L280 TraceCheckUtils]: 11: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,837 INFO L280 TraceCheckUtils]: 12: Hoare triple {146138#true} havoc ~tmp___0~0; {146138#true} is VALID [2020-07-10 20:33:10,837 INFO L263 TraceCheckUtils]: 13: Hoare triple {146138#true} call #t~ret0 := is_do_write_p_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,837 INFO L280 TraceCheckUtils]: 14: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,838 INFO L280 TraceCheckUtils]: 15: Hoare triple {146138#true} assume !(1 == ~p_dw_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,838 INFO L280 TraceCheckUtils]: 16: Hoare triple {146138#true} ~__retres1~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,838 INFO L280 TraceCheckUtils]: 17: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,838 INFO L280 TraceCheckUtils]: 18: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,838 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,839 INFO L280 TraceCheckUtils]: 20: Hoare triple {146138#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,839 INFO L280 TraceCheckUtils]: 21: Hoare triple {146138#true} ~tmp~0 := #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,839 INFO L280 TraceCheckUtils]: 22: Hoare triple {146138#true} havoc #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,839 INFO L280 TraceCheckUtils]: 23: Hoare triple {146138#true} assume !(0 != ~tmp~0); {146138#true} is VALID [2020-07-10 20:33:10,839 INFO L263 TraceCheckUtils]: 24: Hoare triple {146138#true} call #t~ret1 := is_do_read_c_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,840 INFO L280 TraceCheckUtils]: 25: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,840 INFO L280 TraceCheckUtils]: 26: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,840 INFO L280 TraceCheckUtils]: 27: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,840 INFO L280 TraceCheckUtils]: 28: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,840 INFO L280 TraceCheckUtils]: 29: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,841 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,841 INFO L280 TraceCheckUtils]: 31: Hoare triple {146138#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,841 INFO L280 TraceCheckUtils]: 32: Hoare triple {146138#true} ~tmp___0~0 := #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,841 INFO L280 TraceCheckUtils]: 33: Hoare triple {146138#true} havoc #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,841 INFO L280 TraceCheckUtils]: 34: Hoare triple {146138#true} assume !(0 != ~tmp___0~0); {146138#true} is VALID [2020-07-10 20:33:10,842 INFO L280 TraceCheckUtils]: 35: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,843 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {146138#true} {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} #341#return; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,843 INFO L280 TraceCheckUtils]: 37: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~q_write_ev~0 := 2; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,844 INFO L280 TraceCheckUtils]: 38: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume !false; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,845 INFO L280 TraceCheckUtils]: 39: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume 0 == ~q_free~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,845 INFO L280 TraceCheckUtils]: 40: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~p_dw_st~0 := 2; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,846 INFO L280 TraceCheckUtils]: 41: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~p_dw_pc~0 := 1; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,846 INFO L280 TraceCheckUtils]: 42: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume true; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,847 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} {146138#true} #349#return; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,854 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,864 INFO L280 TraceCheckUtils]: 0: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,864 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} assume 1 == ~p_dw_pc~0; {146138#true} is VALID [2020-07-10 20:33:10,864 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} assume 1 == ~q_read_ev~0; {146138#true} is VALID [2020-07-10 20:33:10,864 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} ~__retres1~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,865 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,865 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,865 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:10,871 INFO L280 TraceCheckUtils]: 0: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,872 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,872 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,872 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,872 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,873 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,873 INFO L280 TraceCheckUtils]: 0: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,874 INFO L280 TraceCheckUtils]: 1: Hoare triple {146138#true} havoc ~tmp___0~0; {146138#true} is VALID [2020-07-10 20:33:10,874 INFO L263 TraceCheckUtils]: 2: Hoare triple {146138#true} call #t~ret0 := is_do_write_p_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,874 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,874 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} assume 1 == ~p_dw_pc~0; {146138#true} is VALID [2020-07-10 20:33:10,875 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} assume 1 == ~q_read_ev~0; {146138#true} is VALID [2020-07-10 20:33:10,875 INFO L280 TraceCheckUtils]: 6: Hoare triple {146138#true} ~__retres1~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,875 INFO L280 TraceCheckUtils]: 7: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,875 INFO L280 TraceCheckUtils]: 8: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,875 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,876 INFO L280 TraceCheckUtils]: 10: Hoare triple {146138#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,876 INFO L280 TraceCheckUtils]: 11: Hoare triple {146138#true} ~tmp~0 := #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,876 INFO L280 TraceCheckUtils]: 12: Hoare triple {146138#true} havoc #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,876 INFO L280 TraceCheckUtils]: 13: Hoare triple {146138#true} assume 0 != ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,876 INFO L280 TraceCheckUtils]: 14: Hoare triple {146138#true} ~p_dw_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,876 INFO L263 TraceCheckUtils]: 15: Hoare triple {146138#true} call #t~ret1 := is_do_read_c_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,877 INFO L280 TraceCheckUtils]: 16: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,877 INFO L280 TraceCheckUtils]: 17: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,877 INFO L280 TraceCheckUtils]: 18: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,877 INFO L280 TraceCheckUtils]: 19: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,877 INFO L280 TraceCheckUtils]: 20: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,878 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,878 INFO L280 TraceCheckUtils]: 22: Hoare triple {146138#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,878 INFO L280 TraceCheckUtils]: 23: Hoare triple {146138#true} ~tmp___0~0 := #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,878 INFO L280 TraceCheckUtils]: 24: Hoare triple {146138#true} havoc #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,878 INFO L280 TraceCheckUtils]: 25: Hoare triple {146138#true} assume !(0 != ~tmp___0~0); {146138#true} is VALID [2020-07-10 20:33:10,878 INFO L280 TraceCheckUtils]: 26: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,879 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {146138#true} {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} #365#return; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,881 INFO L263 TraceCheckUtils]: 0: Hoare triple {146138#true} call ULTIMATE.init(); {146255#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:33:10,882 INFO L280 TraceCheckUtils]: 1: Hoare triple {146255#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,882 INFO L280 TraceCheckUtils]: 2: Hoare triple {146138#true} ~q_free~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,882 INFO L280 TraceCheckUtils]: 3: Hoare triple {146138#true} ~q_read_ev~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,882 INFO L280 TraceCheckUtils]: 4: Hoare triple {146138#true} ~q_write_ev~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,882 INFO L280 TraceCheckUtils]: 5: Hoare triple {146138#true} ~p_num_write~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,882 INFO L280 TraceCheckUtils]: 6: Hoare triple {146138#true} ~p_last_write~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,883 INFO L280 TraceCheckUtils]: 7: Hoare triple {146138#true} ~p_dw_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,883 INFO L280 TraceCheckUtils]: 8: Hoare triple {146138#true} ~p_dw_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,883 INFO L280 TraceCheckUtils]: 9: Hoare triple {146138#true} ~p_dw_i~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,883 INFO L280 TraceCheckUtils]: 10: Hoare triple {146138#true} ~c_num_read~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,883 INFO L280 TraceCheckUtils]: 11: Hoare triple {146138#true} ~c_last_read~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,884 INFO L280 TraceCheckUtils]: 12: Hoare triple {146138#true} ~c_dr_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,884 INFO L280 TraceCheckUtils]: 13: Hoare triple {146138#true} ~c_dr_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,884 INFO L280 TraceCheckUtils]: 14: Hoare triple {146138#true} ~c_dr_i~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,884 INFO L280 TraceCheckUtils]: 15: Hoare triple {146138#true} ~a_t~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,884 INFO L280 TraceCheckUtils]: 16: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,885 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {146138#true} {146138#true} #361#return; {146138#true} is VALID [2020-07-10 20:33:10,885 INFO L263 TraceCheckUtils]: 18: Hoare triple {146138#true} call #t~ret8 := main(); {146138#true} is VALID [2020-07-10 20:33:10,885 INFO L280 TraceCheckUtils]: 19: Hoare triple {146138#true} havoc ~__retres1~3; {146138#true} is VALID [2020-07-10 20:33:10,886 INFO L263 TraceCheckUtils]: 20: Hoare triple {146138#true} call init_model(); {146256#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:33:10,886 INFO L280 TraceCheckUtils]: 21: Hoare triple {146256#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,886 INFO L280 TraceCheckUtils]: 22: Hoare triple {146138#true} ~q_write_ev~0 := 2; {146138#true} is VALID [2020-07-10 20:33:10,887 INFO L280 TraceCheckUtils]: 23: Hoare triple {146138#true} ~q_read_ev~0 := ~q_write_ev~0; {146138#true} is VALID [2020-07-10 20:33:10,887 INFO L280 TraceCheckUtils]: 24: Hoare triple {146138#true} ~p_num_write~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,887 INFO L280 TraceCheckUtils]: 25: Hoare triple {146138#true} ~p_dw_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,887 INFO L280 TraceCheckUtils]: 26: Hoare triple {146138#true} ~p_dw_i~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,887 INFO L280 TraceCheckUtils]: 27: Hoare triple {146138#true} ~c_num_read~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,887 INFO L280 TraceCheckUtils]: 28: Hoare triple {146138#true} ~c_dr_pc~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,888 INFO L280 TraceCheckUtils]: 29: Hoare triple {146138#true} ~c_dr_i~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,888 INFO L280 TraceCheckUtils]: 30: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,888 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {146138#true} {146138#true} #337#return; {146138#true} is VALID [2020-07-10 20:33:10,888 INFO L263 TraceCheckUtils]: 32: Hoare triple {146138#true} call start_simulation(); {146138#true} is VALID [2020-07-10 20:33:10,888 INFO L280 TraceCheckUtils]: 33: Hoare triple {146138#true} havoc ~kernel_st~0; {146138#true} is VALID [2020-07-10 20:33:10,888 INFO L280 TraceCheckUtils]: 34: Hoare triple {146138#true} havoc ~tmp~3; {146138#true} is VALID [2020-07-10 20:33:10,889 INFO L280 TraceCheckUtils]: 35: Hoare triple {146138#true} ~kernel_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,889 INFO L263 TraceCheckUtils]: 36: Hoare triple {146138#true} call init_threads(); {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:10,889 INFO L280 TraceCheckUtils]: 37: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {146138#true} is VALID [2020-07-10 20:33:10,890 INFO L280 TraceCheckUtils]: 38: Hoare triple {146138#true} ~p_dw_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,890 INFO L280 TraceCheckUtils]: 39: Hoare triple {146138#true} assume 1 == ~c_dr_i~0; {146138#true} is VALID [2020-07-10 20:33:10,890 INFO L280 TraceCheckUtils]: 40: Hoare triple {146138#true} ~c_dr_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,890 INFO L280 TraceCheckUtils]: 41: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,890 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {146138#true} {146138#true} #355#return; {146138#true} is VALID [2020-07-10 20:33:10,890 INFO L280 TraceCheckUtils]: 43: Hoare triple {146138#true} assume !false; {146138#true} is VALID [2020-07-10 20:33:10,891 INFO L280 TraceCheckUtils]: 44: Hoare triple {146138#true} ~kernel_st~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,891 INFO L263 TraceCheckUtils]: 45: Hoare triple {146138#true} call eval(); {146138#true} is VALID [2020-07-10 20:33:10,891 INFO L280 TraceCheckUtils]: 46: Hoare triple {146138#true} havoc ~tmp~1; {146138#true} is VALID [2020-07-10 20:33:10,891 INFO L280 TraceCheckUtils]: 47: Hoare triple {146138#true} havoc ~tmp___0~1; {146138#true} is VALID [2020-07-10 20:33:10,891 INFO L280 TraceCheckUtils]: 48: Hoare triple {146138#true} havoc ~tmp___1~0; {146138#true} is VALID [2020-07-10 20:33:10,892 INFO L280 TraceCheckUtils]: 49: Hoare triple {146138#true} assume !false; {146138#true} is VALID [2020-07-10 20:33:10,892 INFO L263 TraceCheckUtils]: 50: Hoare triple {146138#true} call #t~ret3 := exists_runnable_thread(); {146138#true} is VALID [2020-07-10 20:33:10,892 INFO L280 TraceCheckUtils]: 51: Hoare triple {146138#true} havoc ~__retres1~2; {146138#true} is VALID [2020-07-10 20:33:10,892 INFO L280 TraceCheckUtils]: 52: Hoare triple {146138#true} assume 0 == ~p_dw_st~0; {146138#true} is VALID [2020-07-10 20:33:10,892 INFO L280 TraceCheckUtils]: 53: Hoare triple {146138#true} ~__retres1~2 := 1; {146138#true} is VALID [2020-07-10 20:33:10,892 INFO L280 TraceCheckUtils]: 54: Hoare triple {146138#true} #res := ~__retres1~2; {146138#true} is VALID [2020-07-10 20:33:10,893 INFO L280 TraceCheckUtils]: 55: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,893 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {146138#true} {146138#true} #347#return; {146138#true} is VALID [2020-07-10 20:33:10,893 INFO L280 TraceCheckUtils]: 57: Hoare triple {146138#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,893 INFO L280 TraceCheckUtils]: 58: Hoare triple {146138#true} ~tmp___1~0 := #t~ret3; {146138#true} is VALID [2020-07-10 20:33:10,893 INFO L280 TraceCheckUtils]: 59: Hoare triple {146138#true} havoc #t~ret3; {146138#true} is VALID [2020-07-10 20:33:10,894 INFO L280 TraceCheckUtils]: 60: Hoare triple {146138#true} assume 0 != ~tmp___1~0; {146138#true} is VALID [2020-07-10 20:33:10,894 INFO L280 TraceCheckUtils]: 61: Hoare triple {146138#true} assume 0 == ~p_dw_st~0; {146138#true} is VALID [2020-07-10 20:33:10,894 INFO L280 TraceCheckUtils]: 62: Hoare triple {146138#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,894 INFO L280 TraceCheckUtils]: 63: Hoare triple {146138#true} ~tmp~1 := #t~nondet4; {146138#true} is VALID [2020-07-10 20:33:10,894 INFO L280 TraceCheckUtils]: 64: Hoare triple {146138#true} havoc #t~nondet4; {146138#true} is VALID [2020-07-10 20:33:10,895 INFO L280 TraceCheckUtils]: 65: Hoare triple {146138#true} assume 0 != ~tmp~1; {146138#true} is VALID [2020-07-10 20:33:10,895 INFO L280 TraceCheckUtils]: 66: Hoare triple {146138#true} ~p_dw_st~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,896 INFO L263 TraceCheckUtils]: 67: Hoare triple {146138#true} call do_write_p(); {146258#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:33:10,896 INFO L280 TraceCheckUtils]: 68: Hoare triple {146258#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {146138#true} is VALID [2020-07-10 20:33:10,896 INFO L280 TraceCheckUtils]: 69: Hoare triple {146138#true} assume !false; {146138#true} is VALID [2020-07-10 20:33:10,897 INFO L280 TraceCheckUtils]: 70: Hoare triple {146138#true} assume !(0 == ~q_free~0); {146138#true} is VALID [2020-07-10 20:33:10,897 INFO L280 TraceCheckUtils]: 71: Hoare triple {146138#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,897 INFO L280 TraceCheckUtils]: 72: Hoare triple {146138#true} ~q_buf_0~0 := #t~nondet2; {146138#true} is VALID [2020-07-10 20:33:10,897 INFO L280 TraceCheckUtils]: 73: Hoare triple {146138#true} havoc #t~nondet2; {146138#true} is VALID [2020-07-10 20:33:10,898 INFO L280 TraceCheckUtils]: 74: Hoare triple {146138#true} ~p_last_write~0 := ~q_buf_0~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,899 INFO L280 TraceCheckUtils]: 75: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~p_num_write~0 := 1 + ~p_num_write~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,899 INFO L280 TraceCheckUtils]: 76: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~q_free~0 := 0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,900 INFO L280 TraceCheckUtils]: 77: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~q_write_ev~0 := 1; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,901 INFO L263 TraceCheckUtils]: 78: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} call immediate_notify_threads(); {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:10,901 INFO L280 TraceCheckUtils]: 79: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,901 INFO L280 TraceCheckUtils]: 80: Hoare triple {146138#true} havoc ~tmp___0~0; {146138#true} is VALID [2020-07-10 20:33:10,901 INFO L263 TraceCheckUtils]: 81: Hoare triple {146138#true} call #t~ret0 := is_do_write_p_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,901 INFO L280 TraceCheckUtils]: 82: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,901 INFO L280 TraceCheckUtils]: 83: Hoare triple {146138#true} assume !(1 == ~p_dw_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,902 INFO L280 TraceCheckUtils]: 84: Hoare triple {146138#true} ~__retres1~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,902 INFO L280 TraceCheckUtils]: 85: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,902 INFO L280 TraceCheckUtils]: 86: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,902 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,902 INFO L280 TraceCheckUtils]: 88: Hoare triple {146138#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,903 INFO L280 TraceCheckUtils]: 89: Hoare triple {146138#true} ~tmp~0 := #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,903 INFO L280 TraceCheckUtils]: 90: Hoare triple {146138#true} havoc #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,903 INFO L280 TraceCheckUtils]: 91: Hoare triple {146138#true} assume !(0 != ~tmp~0); {146138#true} is VALID [2020-07-10 20:33:10,903 INFO L263 TraceCheckUtils]: 92: Hoare triple {146138#true} call #t~ret1 := is_do_read_c_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,903 INFO L280 TraceCheckUtils]: 93: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,904 INFO L280 TraceCheckUtils]: 94: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,904 INFO L280 TraceCheckUtils]: 95: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,904 INFO L280 TraceCheckUtils]: 96: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,904 INFO L280 TraceCheckUtils]: 97: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,904 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,905 INFO L280 TraceCheckUtils]: 99: Hoare triple {146138#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,905 INFO L280 TraceCheckUtils]: 100: Hoare triple {146138#true} ~tmp___0~0 := #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,905 INFO L280 TraceCheckUtils]: 101: Hoare triple {146138#true} havoc #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,905 INFO L280 TraceCheckUtils]: 102: Hoare triple {146138#true} assume !(0 != ~tmp___0~0); {146138#true} is VALID [2020-07-10 20:33:10,905 INFO L280 TraceCheckUtils]: 103: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,909 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {146138#true} {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} #341#return; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,912 INFO L280 TraceCheckUtils]: 105: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~q_write_ev~0 := 2; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,914 INFO L280 TraceCheckUtils]: 106: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume !false; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,915 INFO L280 TraceCheckUtils]: 107: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume 0 == ~q_free~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,916 INFO L280 TraceCheckUtils]: 108: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~p_dw_st~0 := 2; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,917 INFO L280 TraceCheckUtils]: 109: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~p_dw_pc~0 := 1; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,917 INFO L280 TraceCheckUtils]: 110: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume true; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,918 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} {146138#true} #349#return; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,919 INFO L280 TraceCheckUtils]: 112: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume 0 == ~c_dr_st~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,920 INFO L280 TraceCheckUtils]: 113: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,921 INFO L280 TraceCheckUtils]: 114: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~tmp___0~1 := #t~nondet5; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,922 INFO L280 TraceCheckUtils]: 115: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} havoc #t~nondet5; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,922 INFO L280 TraceCheckUtils]: 116: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume 0 != ~tmp___0~1; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,923 INFO L280 TraceCheckUtils]: 117: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~c_dr_st~0 := 1; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,924 INFO L263 TraceCheckUtils]: 118: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} call do_read_c(); {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,925 INFO L280 TraceCheckUtils]: 119: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} havoc ~a~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,925 INFO L280 TraceCheckUtils]: 120: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume 0 == ~c_dr_pc~0; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,926 INFO L280 TraceCheckUtils]: 121: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume !false; {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,926 INFO L280 TraceCheckUtils]: 122: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} assume !(1 == ~q_free~0); {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} is VALID [2020-07-10 20:33:10,927 INFO L280 TraceCheckUtils]: 123: Hoare triple {146224#(and (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0))} ~a~0 := ~q_buf_0~0; {146225#(and (<= do_read_c_~a~0 ~p_last_write~0) (<= ~p_last_write~0 do_read_c_~a~0))} is VALID [2020-07-10 20:33:10,928 INFO L280 TraceCheckUtils]: 124: Hoare triple {146225#(and (<= do_read_c_~a~0 ~p_last_write~0) (<= ~p_last_write~0 do_read_c_~a~0))} ~c_last_read~0 := ~a~0; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,929 INFO L280 TraceCheckUtils]: 125: Hoare triple {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} ~c_num_read~0 := 1 + ~c_num_read~0; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,930 INFO L280 TraceCheckUtils]: 126: Hoare triple {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} ~q_free~0 := 1; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,930 INFO L280 TraceCheckUtils]: 127: Hoare triple {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} ~q_read_ev~0 := 1; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,931 INFO L263 TraceCheckUtils]: 128: Hoare triple {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} call immediate_notify_threads(); {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:10,931 INFO L280 TraceCheckUtils]: 129: Hoare triple {146257#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,932 INFO L280 TraceCheckUtils]: 130: Hoare triple {146138#true} havoc ~tmp___0~0; {146138#true} is VALID [2020-07-10 20:33:10,932 INFO L263 TraceCheckUtils]: 131: Hoare triple {146138#true} call #t~ret0 := is_do_write_p_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,932 INFO L280 TraceCheckUtils]: 132: Hoare triple {146138#true} havoc ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,932 INFO L280 TraceCheckUtils]: 133: Hoare triple {146138#true} assume 1 == ~p_dw_pc~0; {146138#true} is VALID [2020-07-10 20:33:10,932 INFO L280 TraceCheckUtils]: 134: Hoare triple {146138#true} assume 1 == ~q_read_ev~0; {146138#true} is VALID [2020-07-10 20:33:10,933 INFO L280 TraceCheckUtils]: 135: Hoare triple {146138#true} ~__retres1~0 := 1; {146138#true} is VALID [2020-07-10 20:33:10,933 INFO L280 TraceCheckUtils]: 136: Hoare triple {146138#true} #res := ~__retres1~0; {146138#true} is VALID [2020-07-10 20:33:10,933 INFO L280 TraceCheckUtils]: 137: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,933 INFO L275 TraceCheckUtils]: 138: Hoare quadruple {146138#true} {146138#true} #343#return; {146138#true} is VALID [2020-07-10 20:33:10,933 INFO L280 TraceCheckUtils]: 139: Hoare triple {146138#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,933 INFO L280 TraceCheckUtils]: 140: Hoare triple {146138#true} ~tmp~0 := #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,934 INFO L280 TraceCheckUtils]: 141: Hoare triple {146138#true} havoc #t~ret0; {146138#true} is VALID [2020-07-10 20:33:10,934 INFO L280 TraceCheckUtils]: 142: Hoare triple {146138#true} assume 0 != ~tmp~0; {146138#true} is VALID [2020-07-10 20:33:10,934 INFO L280 TraceCheckUtils]: 143: Hoare triple {146138#true} ~p_dw_st~0 := 0; {146138#true} is VALID [2020-07-10 20:33:10,934 INFO L263 TraceCheckUtils]: 144: Hoare triple {146138#true} call #t~ret1 := is_do_read_c_triggered(); {146138#true} is VALID [2020-07-10 20:33:10,934 INFO L280 TraceCheckUtils]: 145: Hoare triple {146138#true} havoc ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,935 INFO L280 TraceCheckUtils]: 146: Hoare triple {146138#true} assume !(1 == ~c_dr_pc~0); {146138#true} is VALID [2020-07-10 20:33:10,935 INFO L280 TraceCheckUtils]: 147: Hoare triple {146138#true} ~__retres1~1 := 0; {146138#true} is VALID [2020-07-10 20:33:10,935 INFO L280 TraceCheckUtils]: 148: Hoare triple {146138#true} #res := ~__retres1~1; {146138#true} is VALID [2020-07-10 20:33:10,935 INFO L280 TraceCheckUtils]: 149: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,935 INFO L275 TraceCheckUtils]: 150: Hoare quadruple {146138#true} {146138#true} #345#return; {146138#true} is VALID [2020-07-10 20:33:10,935 INFO L280 TraceCheckUtils]: 151: Hoare triple {146138#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {146138#true} is VALID [2020-07-10 20:33:10,936 INFO L280 TraceCheckUtils]: 152: Hoare triple {146138#true} ~tmp___0~0 := #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,936 INFO L280 TraceCheckUtils]: 153: Hoare triple {146138#true} havoc #t~ret1; {146138#true} is VALID [2020-07-10 20:33:10,936 INFO L280 TraceCheckUtils]: 154: Hoare triple {146138#true} assume !(0 != ~tmp___0~0); {146138#true} is VALID [2020-07-10 20:33:10,937 INFO L280 TraceCheckUtils]: 155: Hoare triple {146138#true} assume true; {146138#true} is VALID [2020-07-10 20:33:10,938 INFO L275 TraceCheckUtils]: 156: Hoare quadruple {146138#true} {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} #365#return; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,939 INFO L280 TraceCheckUtils]: 157: Hoare triple {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} ~q_read_ev~0 := 2; {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} is VALID [2020-07-10 20:33:10,940 INFO L280 TraceCheckUtils]: 158: Hoare triple {146226#(and (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0))} assume !(~p_last_write~0 == ~c_last_read~0); {146139#false} is VALID [2020-07-10 20:33:10,940 INFO L263 TraceCheckUtils]: 159: Hoare triple {146139#false} call error(); {146139#false} is VALID [2020-07-10 20:33:10,940 INFO L280 TraceCheckUtils]: 160: Hoare triple {146139#false} assume !false; {146139#false} is VALID [2020-07-10 20:33:10,984 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:33:10,984 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:33:10,984 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1415218393] [2020-07-10 20:33:10,985 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:33:10,985 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2020-07-10 20:33:10,985 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [553133233] [2020-07-10 20:33:10,986 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 161 [2020-07-10 20:33:10,986 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:33:10,986 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2020-07-10 20:33:11,151 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:33:11,152 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2020-07-10 20:33:11,152 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:33:11,152 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2020-07-10 20:33:11,152 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2020-07-10 20:33:11,152 INFO L87 Difference]: Start difference. First operand 1634 states and 1911 transitions. Second operand 9 states. [2020-07-10 20:33:31,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:33:31,637 INFO L93 Difference]: Finished difference Result 1701 states and 1991 transitions. [2020-07-10 20:33:31,637 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2020-07-10 20:33:31,637 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 161 [2020-07-10 20:33:31,638 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:33:31,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2020-07-10 20:33:31,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 450 transitions. [2020-07-10 20:33:31,640 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2020-07-10 20:33:31,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 450 transitions. [2020-07-10 20:33:31,643 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 450 transitions. [2020-07-10 20:33:32,467 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 450 edges. 450 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:33:32,568 INFO L225 Difference]: With dead ends: 1701 [2020-07-10 20:33:32,568 INFO L226 Difference]: Without dead ends: 1698 [2020-07-10 20:33:32,569 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=141, Invalid=365, Unknown=0, NotChecked=0, Total=506 [2020-07-10 20:33:32,570 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1698 states. [2020-07-10 20:33:47,373 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1698 to 1633. [2020-07-10 20:33:47,373 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:33:47,373 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1698 states. Second operand 1633 states. [2020-07-10 20:33:47,374 INFO L74 IsIncluded]: Start isIncluded. First operand 1698 states. Second operand 1633 states. [2020-07-10 20:33:47,374 INFO L87 Difference]: Start difference. First operand 1698 states. Second operand 1633 states. [2020-07-10 20:33:47,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:33:47,469 INFO L93 Difference]: Finished difference Result 1698 states and 1988 transitions. [2020-07-10 20:33:47,469 INFO L276 IsEmpty]: Start isEmpty. Operand 1698 states and 1988 transitions. [2020-07-10 20:33:47,471 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:33:47,471 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:33:47,471 INFO L74 IsIncluded]: Start isIncluded. First operand 1633 states. Second operand 1698 states. [2020-07-10 20:33:47,471 INFO L87 Difference]: Start difference. First operand 1633 states. Second operand 1698 states. [2020-07-10 20:33:47,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:33:47,569 INFO L93 Difference]: Finished difference Result 1698 states and 1988 transitions. [2020-07-10 20:33:47,569 INFO L276 IsEmpty]: Start isEmpty. Operand 1698 states and 1988 transitions. [2020-07-10 20:33:47,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:33:47,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:33:47,571 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:33:47,571 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:33:47,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 1633 states. [2020-07-10 20:33:47,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1633 states to 1633 states and 1909 transitions. [2020-07-10 20:33:47,665 INFO L78 Accepts]: Start accepts. Automaton has 1633 states and 1909 transitions. Word has length 161 [2020-07-10 20:33:47,665 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:33:47,665 INFO L479 AbstractCegarLoop]: Abstraction has 1633 states and 1909 transitions. [2020-07-10 20:33:47,665 INFO L480 AbstractCegarLoop]: Interpolant automaton has 9 states. [2020-07-10 20:33:47,665 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 1633 states and 1909 transitions. [2020-07-10 20:33:53,444 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 1909 edges. 1909 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:33:53,444 INFO L276 IsEmpty]: Start isEmpty. Operand 1633 states and 1909 transitions. [2020-07-10 20:33:53,446 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 163 [2020-07-10 20:33:53,447 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:33:53,447 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:33:53,447 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-10 20:33:53,447 INFO L427 AbstractCegarLoop]: === Iteration 11 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:33:53,447 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:33:53,448 INFO L82 PathProgramCache]: Analyzing trace with hash 531148203, now seen corresponding path program 1 times [2020-07-10 20:33:53,448 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:33:53,448 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1148463645] [2020-07-10 20:33:53,448 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:33:53,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,642 INFO L280 TraceCheckUtils]: 0: Hoare triple {156526#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,643 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} ~q_free~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,643 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~q_read_ev~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,643 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} ~q_write_ev~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,643 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} ~p_num_write~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,643 INFO L280 TraceCheckUtils]: 5: Hoare triple {156410#true} ~p_last_write~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,644 INFO L280 TraceCheckUtils]: 6: Hoare triple {156410#true} ~p_dw_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,644 INFO L280 TraceCheckUtils]: 7: Hoare triple {156410#true} ~p_dw_pc~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,644 INFO L280 TraceCheckUtils]: 8: Hoare triple {156410#true} ~p_dw_i~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,644 INFO L280 TraceCheckUtils]: 9: Hoare triple {156410#true} ~c_num_read~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,644 INFO L280 TraceCheckUtils]: 10: Hoare triple {156410#true} ~c_last_read~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,645 INFO L280 TraceCheckUtils]: 11: Hoare triple {156410#true} ~c_dr_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,645 INFO L280 TraceCheckUtils]: 12: Hoare triple {156410#true} ~c_dr_pc~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,645 INFO L280 TraceCheckUtils]: 13: Hoare triple {156410#true} ~c_dr_i~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,645 INFO L280 TraceCheckUtils]: 14: Hoare triple {156410#true} ~a_t~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,645 INFO L280 TraceCheckUtils]: 15: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,646 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {156410#true} {156410#true} #361#return; {156410#true} is VALID [2020-07-10 20:33:53,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,703 INFO L280 TraceCheckUtils]: 0: Hoare triple {156527#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {156410#true} is VALID [2020-07-10 20:33:53,703 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} ~q_write_ev~0 := 2; {156410#true} is VALID [2020-07-10 20:33:53,704 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~q_read_ev~0 := ~q_write_ev~0; {156410#true} is VALID [2020-07-10 20:33:53,704 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} ~p_num_write~0 := 0; {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} is VALID [2020-07-10 20:33:53,705 INFO L280 TraceCheckUtils]: 4: Hoare triple {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} ~p_dw_pc~0 := 0; {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} is VALID [2020-07-10 20:33:53,706 INFO L280 TraceCheckUtils]: 5: Hoare triple {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} ~p_dw_i~0 := 1; {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} is VALID [2020-07-10 20:33:53,706 INFO L280 TraceCheckUtils]: 6: Hoare triple {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} ~c_num_read~0 := 0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,707 INFO L280 TraceCheckUtils]: 7: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~c_dr_pc~0 := 0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,708 INFO L280 TraceCheckUtils]: 8: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~c_dr_i~0 := 1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,709 INFO L280 TraceCheckUtils]: 9: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume true; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,709 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} {156410#true} #337#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,728 INFO L280 TraceCheckUtils]: 0: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {156410#true} is VALID [2020-07-10 20:33:53,728 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} ~p_dw_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,728 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} assume 1 == ~c_dr_i~0; {156410#true} is VALID [2020-07-10 20:33:53,728 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} ~c_dr_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,729 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,729 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {156410#true} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #355#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,738 INFO L280 TraceCheckUtils]: 0: Hoare triple {156410#true} havoc ~__retres1~2; {156410#true} is VALID [2020-07-10 20:33:53,739 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} assume 0 == ~p_dw_st~0; {156410#true} is VALID [2020-07-10 20:33:53,739 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~__retres1~2 := 1; {156410#true} is VALID [2020-07-10 20:33:53,739 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} #res := ~__retres1~2; {156410#true} is VALID [2020-07-10 20:33:53,739 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,740 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {156410#true} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #347#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,850 INFO L280 TraceCheckUtils]: 0: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,851 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} assume !(1 == ~p_dw_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,851 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~__retres1~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,851 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,852 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,852 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:53,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,856 INFO L280 TraceCheckUtils]: 0: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,857 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,857 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:53,858 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,858 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,858 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:53,859 INFO L280 TraceCheckUtils]: 0: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:53,859 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} havoc ~tmp___0~0; {156410#true} is VALID [2020-07-10 20:33:53,859 INFO L263 TraceCheckUtils]: 2: Hoare triple {156410#true} call #t~ret0 := is_do_write_p_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,860 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,860 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume !(1 == ~p_dw_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,860 INFO L280 TraceCheckUtils]: 5: Hoare triple {156410#true} ~__retres1~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,861 INFO L280 TraceCheckUtils]: 6: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,861 INFO L280 TraceCheckUtils]: 7: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,861 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:53,861 INFO L280 TraceCheckUtils]: 9: Hoare triple {156410#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,862 INFO L280 TraceCheckUtils]: 10: Hoare triple {156410#true} ~tmp~0 := #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,862 INFO L280 TraceCheckUtils]: 11: Hoare triple {156410#true} havoc #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,862 INFO L280 TraceCheckUtils]: 12: Hoare triple {156410#true} assume !(0 != ~tmp~0); {156410#true} is VALID [2020-07-10 20:33:53,863 INFO L263 TraceCheckUtils]: 13: Hoare triple {156410#true} call #t~ret1 := is_do_read_c_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,863 INFO L280 TraceCheckUtils]: 14: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,863 INFO L280 TraceCheckUtils]: 15: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,864 INFO L280 TraceCheckUtils]: 16: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:53,864 INFO L280 TraceCheckUtils]: 17: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,864 INFO L280 TraceCheckUtils]: 18: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,865 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:53,865 INFO L280 TraceCheckUtils]: 20: Hoare triple {156410#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,865 INFO L280 TraceCheckUtils]: 21: Hoare triple {156410#true} ~tmp___0~0 := #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,866 INFO L280 TraceCheckUtils]: 22: Hoare triple {156410#true} havoc #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,866 INFO L280 TraceCheckUtils]: 23: Hoare triple {156410#true} assume !(0 != ~tmp___0~0); {156410#true} is VALID [2020-07-10 20:33:53,866 INFO L280 TraceCheckUtils]: 24: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,868 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {156410#true} {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} #341#return; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,869 INFO L280 TraceCheckUtils]: 0: Hoare triple {156530#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,870 INFO L280 TraceCheckUtils]: 1: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} assume !false; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,870 INFO L280 TraceCheckUtils]: 2: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} assume !(0 == ~q_free~0); {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,871 INFO L280 TraceCheckUtils]: 3: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,872 INFO L280 TraceCheckUtils]: 4: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} ~q_buf_0~0 := #t~nondet2; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,872 INFO L280 TraceCheckUtils]: 5: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} havoc #t~nondet2; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,873 INFO L280 TraceCheckUtils]: 6: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} ~p_last_write~0 := ~q_buf_0~0; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,874 INFO L280 TraceCheckUtils]: 7: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} ~p_num_write~0 := 1 + ~p_num_write~0; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,874 INFO L280 TraceCheckUtils]: 8: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~q_free~0 := 0; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,875 INFO L280 TraceCheckUtils]: 9: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~q_write_ev~0 := 1; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,876 INFO L263 TraceCheckUtils]: 10: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} call immediate_notify_threads(); {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:53,876 INFO L280 TraceCheckUtils]: 11: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:53,876 INFO L280 TraceCheckUtils]: 12: Hoare triple {156410#true} havoc ~tmp___0~0; {156410#true} is VALID [2020-07-10 20:33:53,876 INFO L263 TraceCheckUtils]: 13: Hoare triple {156410#true} call #t~ret0 := is_do_write_p_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,876 INFO L280 TraceCheckUtils]: 14: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,877 INFO L280 TraceCheckUtils]: 15: Hoare triple {156410#true} assume !(1 == ~p_dw_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,877 INFO L280 TraceCheckUtils]: 16: Hoare triple {156410#true} ~__retres1~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,877 INFO L280 TraceCheckUtils]: 17: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,877 INFO L280 TraceCheckUtils]: 18: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,877 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:53,878 INFO L280 TraceCheckUtils]: 20: Hoare triple {156410#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,878 INFO L280 TraceCheckUtils]: 21: Hoare triple {156410#true} ~tmp~0 := #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,878 INFO L280 TraceCheckUtils]: 22: Hoare triple {156410#true} havoc #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,878 INFO L280 TraceCheckUtils]: 23: Hoare triple {156410#true} assume !(0 != ~tmp~0); {156410#true} is VALID [2020-07-10 20:33:53,878 INFO L263 TraceCheckUtils]: 24: Hoare triple {156410#true} call #t~ret1 := is_do_read_c_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,879 INFO L280 TraceCheckUtils]: 25: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,879 INFO L280 TraceCheckUtils]: 26: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,879 INFO L280 TraceCheckUtils]: 27: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:53,879 INFO L280 TraceCheckUtils]: 28: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,879 INFO L280 TraceCheckUtils]: 29: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,880 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:53,880 INFO L280 TraceCheckUtils]: 31: Hoare triple {156410#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,880 INFO L280 TraceCheckUtils]: 32: Hoare triple {156410#true} ~tmp___0~0 := #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,880 INFO L280 TraceCheckUtils]: 33: Hoare triple {156410#true} havoc #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,880 INFO L280 TraceCheckUtils]: 34: Hoare triple {156410#true} assume !(0 != ~tmp___0~0); {156410#true} is VALID [2020-07-10 20:33:53,880 INFO L280 TraceCheckUtils]: 35: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,882 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {156410#true} {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} #341#return; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,883 INFO L280 TraceCheckUtils]: 37: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~q_write_ev~0 := 2; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,884 INFO L280 TraceCheckUtils]: 38: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} assume !false; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,885 INFO L280 TraceCheckUtils]: 39: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} assume 0 == ~q_free~0; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,886 INFO L280 TraceCheckUtils]: 40: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~p_dw_st~0 := 2; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,886 INFO L280 TraceCheckUtils]: 41: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~p_dw_pc~0 := 1; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,887 INFO L280 TraceCheckUtils]: 42: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} assume true; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,889 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #349#return; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:53,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,909 INFO L280 TraceCheckUtils]: 0: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,910 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} assume 1 == ~p_dw_pc~0; {156410#true} is VALID [2020-07-10 20:33:53,910 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} assume 1 == ~q_read_ev~0; {156410#true} is VALID [2020-07-10 20:33:53,910 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} ~__retres1~0 := 1; {156410#true} is VALID [2020-07-10 20:33:53,911 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,911 INFO L280 TraceCheckUtils]: 5: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,911 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:53,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:33:53,927 INFO L280 TraceCheckUtils]: 0: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,927 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,927 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:53,928 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,928 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,928 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:53,929 INFO L280 TraceCheckUtils]: 0: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:53,929 INFO L280 TraceCheckUtils]: 1: Hoare triple {156410#true} havoc ~tmp___0~0; {156410#true} is VALID [2020-07-10 20:33:53,929 INFO L263 TraceCheckUtils]: 2: Hoare triple {156410#true} call #t~ret0 := is_do_write_p_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,929 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,930 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} assume 1 == ~p_dw_pc~0; {156410#true} is VALID [2020-07-10 20:33:53,930 INFO L280 TraceCheckUtils]: 5: Hoare triple {156410#true} assume 1 == ~q_read_ev~0; {156410#true} is VALID [2020-07-10 20:33:53,930 INFO L280 TraceCheckUtils]: 6: Hoare triple {156410#true} ~__retres1~0 := 1; {156410#true} is VALID [2020-07-10 20:33:53,931 INFO L280 TraceCheckUtils]: 7: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,931 INFO L280 TraceCheckUtils]: 8: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,931 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:53,931 INFO L280 TraceCheckUtils]: 10: Hoare triple {156410#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,932 INFO L280 TraceCheckUtils]: 11: Hoare triple {156410#true} ~tmp~0 := #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,932 INFO L280 TraceCheckUtils]: 12: Hoare triple {156410#true} havoc #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,932 INFO L280 TraceCheckUtils]: 13: Hoare triple {156410#true} assume 0 != ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:53,932 INFO L280 TraceCheckUtils]: 14: Hoare triple {156410#true} ~p_dw_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,932 INFO L263 TraceCheckUtils]: 15: Hoare triple {156410#true} call #t~ret1 := is_do_read_c_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,933 INFO L280 TraceCheckUtils]: 16: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,933 INFO L280 TraceCheckUtils]: 17: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,933 INFO L280 TraceCheckUtils]: 18: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:53,933 INFO L280 TraceCheckUtils]: 19: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,933 INFO L280 TraceCheckUtils]: 20: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,933 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:53,934 INFO L280 TraceCheckUtils]: 22: Hoare triple {156410#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,934 INFO L280 TraceCheckUtils]: 23: Hoare triple {156410#true} ~tmp___0~0 := #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,934 INFO L280 TraceCheckUtils]: 24: Hoare triple {156410#true} havoc #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,934 INFO L280 TraceCheckUtils]: 25: Hoare triple {156410#true} assume !(0 != ~tmp___0~0); {156410#true} is VALID [2020-07-10 20:33:53,934 INFO L280 TraceCheckUtils]: 26: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,936 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {156410#true} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #365#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,937 INFO L263 TraceCheckUtils]: 0: Hoare triple {156410#true} call ULTIMATE.init(); {156526#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:33:53,938 INFO L280 TraceCheckUtils]: 1: Hoare triple {156526#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,938 INFO L280 TraceCheckUtils]: 2: Hoare triple {156410#true} ~q_free~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,938 INFO L280 TraceCheckUtils]: 3: Hoare triple {156410#true} ~q_read_ev~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,938 INFO L280 TraceCheckUtils]: 4: Hoare triple {156410#true} ~q_write_ev~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,938 INFO L280 TraceCheckUtils]: 5: Hoare triple {156410#true} ~p_num_write~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,939 INFO L280 TraceCheckUtils]: 6: Hoare triple {156410#true} ~p_last_write~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,939 INFO L280 TraceCheckUtils]: 7: Hoare triple {156410#true} ~p_dw_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,939 INFO L280 TraceCheckUtils]: 8: Hoare triple {156410#true} ~p_dw_pc~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,939 INFO L280 TraceCheckUtils]: 9: Hoare triple {156410#true} ~p_dw_i~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,939 INFO L280 TraceCheckUtils]: 10: Hoare triple {156410#true} ~c_num_read~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,940 INFO L280 TraceCheckUtils]: 11: Hoare triple {156410#true} ~c_last_read~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,940 INFO L280 TraceCheckUtils]: 12: Hoare triple {156410#true} ~c_dr_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,940 INFO L280 TraceCheckUtils]: 13: Hoare triple {156410#true} ~c_dr_pc~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,940 INFO L280 TraceCheckUtils]: 14: Hoare triple {156410#true} ~c_dr_i~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,940 INFO L280 TraceCheckUtils]: 15: Hoare triple {156410#true} ~a_t~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,941 INFO L280 TraceCheckUtils]: 16: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,941 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {156410#true} {156410#true} #361#return; {156410#true} is VALID [2020-07-10 20:33:53,941 INFO L263 TraceCheckUtils]: 18: Hoare triple {156410#true} call #t~ret8 := main(); {156410#true} is VALID [2020-07-10 20:33:53,941 INFO L280 TraceCheckUtils]: 19: Hoare triple {156410#true} havoc ~__retres1~3; {156410#true} is VALID [2020-07-10 20:33:53,945 INFO L263 TraceCheckUtils]: 20: Hoare triple {156410#true} call init_model(); {156527#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:33:53,946 INFO L280 TraceCheckUtils]: 21: Hoare triple {156527#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {156410#true} is VALID [2020-07-10 20:33:53,946 INFO L280 TraceCheckUtils]: 22: Hoare triple {156410#true} ~q_write_ev~0 := 2; {156410#true} is VALID [2020-07-10 20:33:53,946 INFO L280 TraceCheckUtils]: 23: Hoare triple {156410#true} ~q_read_ev~0 := ~q_write_ev~0; {156410#true} is VALID [2020-07-10 20:33:53,947 INFO L280 TraceCheckUtils]: 24: Hoare triple {156410#true} ~p_num_write~0 := 0; {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} is VALID [2020-07-10 20:33:53,948 INFO L280 TraceCheckUtils]: 25: Hoare triple {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} ~p_dw_pc~0 := 0; {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} is VALID [2020-07-10 20:33:53,949 INFO L280 TraceCheckUtils]: 26: Hoare triple {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} ~p_dw_i~0 := 1; {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} is VALID [2020-07-10 20:33:53,950 INFO L280 TraceCheckUtils]: 27: Hoare triple {156528#(and (<= 0 ~p_num_write~0) (<= ~p_num_write~0 0))} ~c_num_read~0 := 0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,950 INFO L280 TraceCheckUtils]: 28: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~c_dr_pc~0 := 0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,951 INFO L280 TraceCheckUtils]: 29: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~c_dr_i~0 := 1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,952 INFO L280 TraceCheckUtils]: 30: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume true; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,953 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} {156410#true} #337#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,954 INFO L263 TraceCheckUtils]: 32: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} call start_simulation(); {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,955 INFO L280 TraceCheckUtils]: 33: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc ~kernel_st~0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,956 INFO L280 TraceCheckUtils]: 34: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc ~tmp~3; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,956 INFO L280 TraceCheckUtils]: 35: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~kernel_st~0 := 0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,958 INFO L263 TraceCheckUtils]: 36: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} call init_threads(); {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:53,958 INFO L280 TraceCheckUtils]: 37: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {156410#true} is VALID [2020-07-10 20:33:53,958 INFO L280 TraceCheckUtils]: 38: Hoare triple {156410#true} ~p_dw_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,958 INFO L280 TraceCheckUtils]: 39: Hoare triple {156410#true} assume 1 == ~c_dr_i~0; {156410#true} is VALID [2020-07-10 20:33:53,959 INFO L280 TraceCheckUtils]: 40: Hoare triple {156410#true} ~c_dr_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,959 INFO L280 TraceCheckUtils]: 41: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,960 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {156410#true} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #355#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,961 INFO L280 TraceCheckUtils]: 43: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume !false; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,961 INFO L280 TraceCheckUtils]: 44: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~kernel_st~0 := 1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,962 INFO L263 TraceCheckUtils]: 45: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} call eval(); {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,963 INFO L280 TraceCheckUtils]: 46: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc ~tmp~1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,964 INFO L280 TraceCheckUtils]: 47: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc ~tmp___0~1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,965 INFO L280 TraceCheckUtils]: 48: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc ~tmp___1~0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,965 INFO L280 TraceCheckUtils]: 49: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume !false; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,966 INFO L263 TraceCheckUtils]: 50: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} call #t~ret3 := exists_runnable_thread(); {156410#true} is VALID [2020-07-10 20:33:53,966 INFO L280 TraceCheckUtils]: 51: Hoare triple {156410#true} havoc ~__retres1~2; {156410#true} is VALID [2020-07-10 20:33:53,966 INFO L280 TraceCheckUtils]: 52: Hoare triple {156410#true} assume 0 == ~p_dw_st~0; {156410#true} is VALID [2020-07-10 20:33:53,966 INFO L280 TraceCheckUtils]: 53: Hoare triple {156410#true} ~__retres1~2 := 1; {156410#true} is VALID [2020-07-10 20:33:53,966 INFO L280 TraceCheckUtils]: 54: Hoare triple {156410#true} #res := ~__retres1~2; {156410#true} is VALID [2020-07-10 20:33:53,966 INFO L280 TraceCheckUtils]: 55: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,967 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {156410#true} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #347#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,968 INFO L280 TraceCheckUtils]: 57: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,969 INFO L280 TraceCheckUtils]: 58: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~tmp___1~0 := #t~ret3; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,969 INFO L280 TraceCheckUtils]: 59: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc #t~ret3; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,970 INFO L280 TraceCheckUtils]: 60: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume 0 != ~tmp___1~0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,971 INFO L280 TraceCheckUtils]: 61: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume 0 == ~p_dw_st~0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,972 INFO L280 TraceCheckUtils]: 62: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,972 INFO L280 TraceCheckUtils]: 63: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~tmp~1 := #t~nondet4; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,973 INFO L280 TraceCheckUtils]: 64: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} havoc #t~nondet4; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,974 INFO L280 TraceCheckUtils]: 65: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume 0 != ~tmp~1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,976 INFO L280 TraceCheckUtils]: 66: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~p_dw_st~0 := 1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:53,977 INFO L263 TraceCheckUtils]: 67: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} call do_write_p(); {156530#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:33:53,978 INFO L280 TraceCheckUtils]: 68: Hoare triple {156530#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,979 INFO L280 TraceCheckUtils]: 69: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} assume !false; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,979 INFO L280 TraceCheckUtils]: 70: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} assume !(0 == ~q_free~0); {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,980 INFO L280 TraceCheckUtils]: 71: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,981 INFO L280 TraceCheckUtils]: 72: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} ~q_buf_0~0 := #t~nondet2; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,982 INFO L280 TraceCheckUtils]: 73: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} havoc #t~nondet2; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,982 INFO L280 TraceCheckUtils]: 74: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} ~p_last_write~0 := ~q_buf_0~0; {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} is VALID [2020-07-10 20:33:53,983 INFO L280 TraceCheckUtils]: 75: Hoare triple {156531#(= ~p_num_write~0 |old(~p_num_write~0)|)} ~p_num_write~0 := 1 + ~p_num_write~0; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,984 INFO L280 TraceCheckUtils]: 76: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~q_free~0 := 0; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,985 INFO L280 TraceCheckUtils]: 77: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~q_write_ev~0 := 1; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,986 INFO L263 TraceCheckUtils]: 78: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} call immediate_notify_threads(); {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:53,986 INFO L280 TraceCheckUtils]: 79: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:53,987 INFO L280 TraceCheckUtils]: 80: Hoare triple {156410#true} havoc ~tmp___0~0; {156410#true} is VALID [2020-07-10 20:33:53,987 INFO L263 TraceCheckUtils]: 81: Hoare triple {156410#true} call #t~ret0 := is_do_write_p_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,987 INFO L280 TraceCheckUtils]: 82: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,987 INFO L280 TraceCheckUtils]: 83: Hoare triple {156410#true} assume !(1 == ~p_dw_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,988 INFO L280 TraceCheckUtils]: 84: Hoare triple {156410#true} ~__retres1~0 := 0; {156410#true} is VALID [2020-07-10 20:33:53,988 INFO L280 TraceCheckUtils]: 85: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:53,988 INFO L280 TraceCheckUtils]: 86: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,989 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:53,989 INFO L280 TraceCheckUtils]: 88: Hoare triple {156410#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,989 INFO L280 TraceCheckUtils]: 89: Hoare triple {156410#true} ~tmp~0 := #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,989 INFO L280 TraceCheckUtils]: 90: Hoare triple {156410#true} havoc #t~ret0; {156410#true} is VALID [2020-07-10 20:33:53,990 INFO L280 TraceCheckUtils]: 91: Hoare triple {156410#true} assume !(0 != ~tmp~0); {156410#true} is VALID [2020-07-10 20:33:53,990 INFO L263 TraceCheckUtils]: 92: Hoare triple {156410#true} call #t~ret1 := is_do_read_c_triggered(); {156410#true} is VALID [2020-07-10 20:33:53,990 INFO L280 TraceCheckUtils]: 93: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,990 INFO L280 TraceCheckUtils]: 94: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:53,991 INFO L280 TraceCheckUtils]: 95: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:53,991 INFO L280 TraceCheckUtils]: 96: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:53,992 INFO L280 TraceCheckUtils]: 97: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,993 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:53,993 INFO L280 TraceCheckUtils]: 99: Hoare triple {156410#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:53,993 INFO L280 TraceCheckUtils]: 100: Hoare triple {156410#true} ~tmp___0~0 := #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,993 INFO L280 TraceCheckUtils]: 101: Hoare triple {156410#true} havoc #t~ret1; {156410#true} is VALID [2020-07-10 20:33:53,993 INFO L280 TraceCheckUtils]: 102: Hoare triple {156410#true} assume !(0 != ~tmp___0~0); {156410#true} is VALID [2020-07-10 20:33:53,994 INFO L280 TraceCheckUtils]: 103: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:53,995 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {156410#true} {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} #341#return; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,995 INFO L280 TraceCheckUtils]: 105: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~q_write_ev~0 := 2; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,996 INFO L280 TraceCheckUtils]: 106: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} assume !false; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,997 INFO L280 TraceCheckUtils]: 107: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} assume 0 == ~q_free~0; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,997 INFO L280 TraceCheckUtils]: 108: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~p_dw_st~0 := 2; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,998 INFO L280 TraceCheckUtils]: 109: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} ~p_dw_pc~0 := 1; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:53,999 INFO L280 TraceCheckUtils]: 110: Hoare triple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} assume true; {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} is VALID [2020-07-10 20:33:54,001 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {156532#(and (<= ~p_num_write~0 (+ |old(~p_num_write~0)| 1)) (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #349#return; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,002 INFO L280 TraceCheckUtils]: 112: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} assume 0 == ~c_dr_st~0; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,003 INFO L280 TraceCheckUtils]: 113: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,004 INFO L280 TraceCheckUtils]: 114: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} ~tmp___0~1 := #t~nondet5; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,005 INFO L280 TraceCheckUtils]: 115: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} havoc #t~nondet5; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,006 INFO L280 TraceCheckUtils]: 116: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} assume 0 != ~tmp___0~1; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,007 INFO L280 TraceCheckUtils]: 117: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} ~c_dr_st~0 := 1; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,008 INFO L263 TraceCheckUtils]: 118: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} call do_read_c(); {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,009 INFO L280 TraceCheckUtils]: 119: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} havoc ~a~0; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,010 INFO L280 TraceCheckUtils]: 120: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} assume 0 == ~c_dr_pc~0; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,010 INFO L280 TraceCheckUtils]: 121: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} assume !false; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,011 INFO L280 TraceCheckUtils]: 122: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} assume !(1 == ~q_free~0); {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,012 INFO L280 TraceCheckUtils]: 123: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} ~a~0 := ~q_buf_0~0; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,013 INFO L280 TraceCheckUtils]: 124: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} ~c_last_read~0 := ~a~0; {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} is VALID [2020-07-10 20:33:54,014 INFO L280 TraceCheckUtils]: 125: Hoare triple {156497#(and (<= (+ ~c_num_read~0 1) ~p_num_write~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)))} ~c_num_read~0 := 1 + ~c_num_read~0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:54,015 INFO L280 TraceCheckUtils]: 126: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~q_free~0 := 1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:54,016 INFO L280 TraceCheckUtils]: 127: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~q_read_ev~0 := 1; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:54,017 INFO L263 TraceCheckUtils]: 128: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} call immediate_notify_threads(); {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:33:54,018 INFO L280 TraceCheckUtils]: 129: Hoare triple {156529#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:54,018 INFO L280 TraceCheckUtils]: 130: Hoare triple {156410#true} havoc ~tmp___0~0; {156410#true} is VALID [2020-07-10 20:33:54,018 INFO L263 TraceCheckUtils]: 131: Hoare triple {156410#true} call #t~ret0 := is_do_write_p_triggered(); {156410#true} is VALID [2020-07-10 20:33:54,018 INFO L280 TraceCheckUtils]: 132: Hoare triple {156410#true} havoc ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:54,019 INFO L280 TraceCheckUtils]: 133: Hoare triple {156410#true} assume 1 == ~p_dw_pc~0; {156410#true} is VALID [2020-07-10 20:33:54,019 INFO L280 TraceCheckUtils]: 134: Hoare triple {156410#true} assume 1 == ~q_read_ev~0; {156410#true} is VALID [2020-07-10 20:33:54,019 INFO L280 TraceCheckUtils]: 135: Hoare triple {156410#true} ~__retres1~0 := 1; {156410#true} is VALID [2020-07-10 20:33:54,019 INFO L280 TraceCheckUtils]: 136: Hoare triple {156410#true} #res := ~__retres1~0; {156410#true} is VALID [2020-07-10 20:33:54,020 INFO L280 TraceCheckUtils]: 137: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:54,020 INFO L275 TraceCheckUtils]: 138: Hoare quadruple {156410#true} {156410#true} #343#return; {156410#true} is VALID [2020-07-10 20:33:54,020 INFO L280 TraceCheckUtils]: 139: Hoare triple {156410#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:54,020 INFO L280 TraceCheckUtils]: 140: Hoare triple {156410#true} ~tmp~0 := #t~ret0; {156410#true} is VALID [2020-07-10 20:33:54,021 INFO L280 TraceCheckUtils]: 141: Hoare triple {156410#true} havoc #t~ret0; {156410#true} is VALID [2020-07-10 20:33:54,021 INFO L280 TraceCheckUtils]: 142: Hoare triple {156410#true} assume 0 != ~tmp~0; {156410#true} is VALID [2020-07-10 20:33:54,021 INFO L280 TraceCheckUtils]: 143: Hoare triple {156410#true} ~p_dw_st~0 := 0; {156410#true} is VALID [2020-07-10 20:33:54,021 INFO L263 TraceCheckUtils]: 144: Hoare triple {156410#true} call #t~ret1 := is_do_read_c_triggered(); {156410#true} is VALID [2020-07-10 20:33:54,022 INFO L280 TraceCheckUtils]: 145: Hoare triple {156410#true} havoc ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:54,022 INFO L280 TraceCheckUtils]: 146: Hoare triple {156410#true} assume !(1 == ~c_dr_pc~0); {156410#true} is VALID [2020-07-10 20:33:54,022 INFO L280 TraceCheckUtils]: 147: Hoare triple {156410#true} ~__retres1~1 := 0; {156410#true} is VALID [2020-07-10 20:33:54,022 INFO L280 TraceCheckUtils]: 148: Hoare triple {156410#true} #res := ~__retres1~1; {156410#true} is VALID [2020-07-10 20:33:54,022 INFO L280 TraceCheckUtils]: 149: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:54,022 INFO L275 TraceCheckUtils]: 150: Hoare quadruple {156410#true} {156410#true} #345#return; {156410#true} is VALID [2020-07-10 20:33:54,023 INFO L280 TraceCheckUtils]: 151: Hoare triple {156410#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {156410#true} is VALID [2020-07-10 20:33:54,023 INFO L280 TraceCheckUtils]: 152: Hoare triple {156410#true} ~tmp___0~0 := #t~ret1; {156410#true} is VALID [2020-07-10 20:33:54,023 INFO L280 TraceCheckUtils]: 153: Hoare triple {156410#true} havoc #t~ret1; {156410#true} is VALID [2020-07-10 20:33:54,023 INFO L280 TraceCheckUtils]: 154: Hoare triple {156410#true} assume !(0 != ~tmp___0~0); {156410#true} is VALID [2020-07-10 20:33:54,023 INFO L280 TraceCheckUtils]: 155: Hoare triple {156410#true} assume true; {156410#true} is VALID [2020-07-10 20:33:54,025 INFO L275 TraceCheckUtils]: 156: Hoare quadruple {156410#true} {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} #365#return; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:54,025 INFO L280 TraceCheckUtils]: 157: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} ~q_read_ev~0 := 2; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:54,026 INFO L280 TraceCheckUtils]: 158: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume ~p_last_write~0 == ~c_last_read~0; {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} is VALID [2020-07-10 20:33:54,027 INFO L280 TraceCheckUtils]: 159: Hoare triple {156440#(and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0))} assume !(~p_num_write~0 == ~c_num_read~0); {156411#false} is VALID [2020-07-10 20:33:54,028 INFO L263 TraceCheckUtils]: 160: Hoare triple {156411#false} call error(); {156411#false} is VALID [2020-07-10 20:33:54,028 INFO L280 TraceCheckUtils]: 161: Hoare triple {156411#false} assume !false; {156411#false} is VALID [2020-07-10 20:33:54,083 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:33:54,083 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:33:54,084 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1148463645] [2020-07-10 20:33:54,084 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:33:54,084 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2020-07-10 20:33:54,084 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1723795514] [2020-07-10 20:33:54,085 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 162 [2020-07-10 20:33:54,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:33:54,086 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2020-07-10 20:33:54,228 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:33:54,229 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2020-07-10 20:33:54,229 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:33:54,229 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2020-07-10 20:33:54,229 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2020-07-10 20:33:54,230 INFO L87 Difference]: Start difference. First operand 1633 states and 1909 transitions. Second operand 11 states. [2020-07-10 20:34:27,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:34:27,793 INFO L93 Difference]: Finished difference Result 2722 states and 3265 transitions. [2020-07-10 20:34:27,793 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2020-07-10 20:34:27,793 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 162 [2020-07-10 20:34:27,794 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:34:27,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-10 20:34:27,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 730 transitions. [2020-07-10 20:34:27,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-10 20:34:27,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 730 transitions. [2020-07-10 20:34:27,809 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states and 730 transitions. [2020-07-10 20:34:29,210 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 730 edges. 730 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:34:29,481 INFO L225 Difference]: With dead ends: 2722 [2020-07-10 20:34:29,481 INFO L226 Difference]: Without dead ends: 2719 [2020-07-10 20:34:29,482 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 31 SyntacticMatches, 1 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 225 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=223, Invalid=833, Unknown=0, NotChecked=0, Total=1056 [2020-07-10 20:34:29,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2719 states. [2020-07-10 20:34:52,831 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2719 to 2469. [2020-07-10 20:34:52,831 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:34:52,831 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2719 states. Second operand 2469 states. [2020-07-10 20:34:52,831 INFO L74 IsIncluded]: Start isIncluded. First operand 2719 states. Second operand 2469 states. [2020-07-10 20:34:52,831 INFO L87 Difference]: Start difference. First operand 2719 states. Second operand 2469 states. [2020-07-10 20:34:53,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:34:53,069 INFO L93 Difference]: Finished difference Result 2719 states and 3262 transitions. [2020-07-10 20:34:53,069 INFO L276 IsEmpty]: Start isEmpty. Operand 2719 states and 3262 transitions. [2020-07-10 20:34:53,072 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:34:53,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:34:53,073 INFO L74 IsIncluded]: Start isIncluded. First operand 2469 states. Second operand 2719 states. [2020-07-10 20:34:53,073 INFO L87 Difference]: Start difference. First operand 2469 states. Second operand 2719 states. [2020-07-10 20:34:53,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:34:53,310 INFO L93 Difference]: Finished difference Result 2719 states and 3262 transitions. [2020-07-10 20:34:53,310 INFO L276 IsEmpty]: Start isEmpty. Operand 2719 states and 3262 transitions. [2020-07-10 20:34:53,314 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:34:53,314 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:34:53,314 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:34:53,314 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:34:53,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2469 states. [2020-07-10 20:34:53,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2469 states to 2469 states and 2948 transitions. [2020-07-10 20:34:53,535 INFO L78 Accepts]: Start accepts. Automaton has 2469 states and 2948 transitions. Word has length 162 [2020-07-10 20:34:53,535 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:34:53,535 INFO L479 AbstractCegarLoop]: Abstraction has 2469 states and 2948 transitions. [2020-07-10 20:34:53,535 INFO L480 AbstractCegarLoop]: Interpolant automaton has 11 states. [2020-07-10 20:34:53,535 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2469 states and 2948 transitions. [2020-07-10 20:35:02,899 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 2948 edges. 2948 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:35:02,899 INFO L276 IsEmpty]: Start isEmpty. Operand 2469 states and 2948 transitions. [2020-07-10 20:35:02,902 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 200 [2020-07-10 20:35:02,902 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 20:35:02,902 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-10 20:35:02,902 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-10 20:35:02,903 INFO L427 AbstractCegarLoop]: === Iteration 12 === [errorErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 20:35:02,903 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 20:35:02,903 INFO L82 PathProgramCache]: Analyzing trace with hash 1810315171, now seen corresponding path program 2 times [2020-07-10 20:35:02,903 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 20:35:02,903 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1686193315] [2020-07-10 20:35:02,903 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 20:35:02,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,019 INFO L280 TraceCheckUtils]: 0: Hoare triple {172609#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,020 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} ~q_free~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,020 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~q_read_ev~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,020 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} ~q_write_ev~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,020 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} ~p_num_write~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,021 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} ~p_last_write~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,021 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} ~p_dw_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,021 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} ~p_dw_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,021 INFO L280 TraceCheckUtils]: 8: Hoare triple {172458#true} ~p_dw_i~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,021 INFO L280 TraceCheckUtils]: 9: Hoare triple {172458#true} ~c_num_read~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,022 INFO L280 TraceCheckUtils]: 10: Hoare triple {172458#true} ~c_last_read~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,022 INFO L280 TraceCheckUtils]: 11: Hoare triple {172458#true} ~c_dr_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,022 INFO L280 TraceCheckUtils]: 12: Hoare triple {172458#true} ~c_dr_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,022 INFO L280 TraceCheckUtils]: 13: Hoare triple {172458#true} ~c_dr_i~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,022 INFO L280 TraceCheckUtils]: 14: Hoare triple {172458#true} ~a_t~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,023 INFO L280 TraceCheckUtils]: 15: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,023 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {172458#true} {172458#true} #361#return; {172458#true} is VALID [2020-07-10 20:35:03,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,063 INFO L280 TraceCheckUtils]: 0: Hoare triple {172610#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,063 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} ~q_write_ev~0 := 2; {172458#true} is VALID [2020-07-10 20:35:03,063 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~q_read_ev~0 := ~q_write_ev~0; {172458#true} is VALID [2020-07-10 20:35:03,063 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} ~p_num_write~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,064 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} ~p_dw_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,064 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} ~p_dw_i~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,064 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} ~c_num_read~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,064 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} ~c_dr_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,065 INFO L280 TraceCheckUtils]: 8: Hoare triple {172458#true} ~c_dr_i~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,065 INFO L280 TraceCheckUtils]: 9: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,065 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {172458#true} {172458#true} #337#return; {172458#true} is VALID [2020-07-10 20:35:03,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,080 INFO L280 TraceCheckUtils]: 0: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {172458#true} is VALID [2020-07-10 20:35:03,081 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} ~p_dw_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,081 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} assume 1 == ~c_dr_i~0; {172458#true} is VALID [2020-07-10 20:35:03,081 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} ~c_dr_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,081 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,081 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #355#return; {172458#true} is VALID [2020-07-10 20:35:03,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,084 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~2; {172458#true} is VALID [2020-07-10 20:35:03,085 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume 0 == ~p_dw_st~0; {172458#true} is VALID [2020-07-10 20:35:03,085 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~__retres1~2 := 1; {172458#true} is VALID [2020-07-10 20:35:03,085 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} #res := ~__retres1~2; {172458#true} is VALID [2020-07-10 20:35:03,085 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,085 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #347#return; {172458#true} is VALID [2020-07-10 20:35:03,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,144 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,144 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,144 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,145 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,145 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,145 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,148 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,148 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,149 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,149 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,149 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,149 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,149 INFO L280 TraceCheckUtils]: 0: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,150 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,150 INFO L263 TraceCheckUtils]: 2: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,150 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,150 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,150 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,151 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,151 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,151 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,151 INFO L280 TraceCheckUtils]: 9: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,151 INFO L280 TraceCheckUtils]: 10: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,152 INFO L280 TraceCheckUtils]: 11: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,152 INFO L280 TraceCheckUtils]: 12: Hoare triple {172458#true} assume !(0 != ~tmp~0); {172458#true} is VALID [2020-07-10 20:35:03,152 INFO L263 TraceCheckUtils]: 13: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,152 INFO L280 TraceCheckUtils]: 14: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,153 INFO L280 TraceCheckUtils]: 15: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,153 INFO L280 TraceCheckUtils]: 16: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,153 INFO L280 TraceCheckUtils]: 17: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,153 INFO L280 TraceCheckUtils]: 18: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,154 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,154 INFO L280 TraceCheckUtils]: 20: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,154 INFO L280 TraceCheckUtils]: 21: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,154 INFO L280 TraceCheckUtils]: 22: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,154 INFO L280 TraceCheckUtils]: 23: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,155 INFO L280 TraceCheckUtils]: 24: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,155 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {172458#true} {172613#(= 0 ~q_free~0)} #341#return; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,164 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,164 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,165 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,165 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,165 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,165 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,168 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,169 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,169 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,169 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,169 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,170 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,170 INFO L280 TraceCheckUtils]: 0: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,170 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,170 INFO L263 TraceCheckUtils]: 2: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,170 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,171 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,171 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,171 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,171 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,171 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,172 INFO L280 TraceCheckUtils]: 9: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,172 INFO L280 TraceCheckUtils]: 10: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,172 INFO L280 TraceCheckUtils]: 11: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,172 INFO L280 TraceCheckUtils]: 12: Hoare triple {172458#true} assume !(0 != ~tmp~0); {172458#true} is VALID [2020-07-10 20:35:03,172 INFO L263 TraceCheckUtils]: 13: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,173 INFO L280 TraceCheckUtils]: 14: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,173 INFO L280 TraceCheckUtils]: 15: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,173 INFO L280 TraceCheckUtils]: 16: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,173 INFO L280 TraceCheckUtils]: 17: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,173 INFO L280 TraceCheckUtils]: 18: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,174 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,174 INFO L280 TraceCheckUtils]: 20: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,174 INFO L280 TraceCheckUtils]: 21: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,174 INFO L280 TraceCheckUtils]: 22: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,174 INFO L280 TraceCheckUtils]: 23: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,175 INFO L280 TraceCheckUtils]: 24: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,175 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {172458#true} {172459#false} #341#return; {172459#false} is VALID [2020-07-10 20:35:03,175 INFO L280 TraceCheckUtils]: 0: Hoare triple {172612#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {172458#true} is VALID [2020-07-10 20:35:03,176 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume !false; {172458#true} is VALID [2020-07-10 20:35:03,176 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} assume !(0 == ~q_free~0); {172458#true} is VALID [2020-07-10 20:35:03,176 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,176 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} ~q_buf_0~0 := #t~nondet2; {172458#true} is VALID [2020-07-10 20:35:03,176 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} havoc #t~nondet2; {172458#true} is VALID [2020-07-10 20:35:03,176 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} ~p_last_write~0 := ~q_buf_0~0; {172458#true} is VALID [2020-07-10 20:35:03,177 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} ~p_num_write~0 := 1 + ~p_num_write~0; {172458#true} is VALID [2020-07-10 20:35:03,178 INFO L280 TraceCheckUtils]: 8: Hoare triple {172458#true} ~q_free~0 := 0; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,178 INFO L280 TraceCheckUtils]: 9: Hoare triple {172613#(= 0 ~q_free~0)} ~q_write_ev~0 := 1; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,179 INFO L263 TraceCheckUtils]: 10: Hoare triple {172613#(= 0 ~q_free~0)} call immediate_notify_threads(); {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:35:03,179 INFO L280 TraceCheckUtils]: 11: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,179 INFO L280 TraceCheckUtils]: 12: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,180 INFO L263 TraceCheckUtils]: 13: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,180 INFO L280 TraceCheckUtils]: 14: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,180 INFO L280 TraceCheckUtils]: 15: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,180 INFO L280 TraceCheckUtils]: 16: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,180 INFO L280 TraceCheckUtils]: 17: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,180 INFO L280 TraceCheckUtils]: 18: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,181 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,181 INFO L280 TraceCheckUtils]: 20: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,181 INFO L280 TraceCheckUtils]: 21: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,181 INFO L280 TraceCheckUtils]: 22: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,181 INFO L280 TraceCheckUtils]: 23: Hoare triple {172458#true} assume !(0 != ~tmp~0); {172458#true} is VALID [2020-07-10 20:35:03,182 INFO L263 TraceCheckUtils]: 24: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,182 INFO L280 TraceCheckUtils]: 25: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,182 INFO L280 TraceCheckUtils]: 26: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,182 INFO L280 TraceCheckUtils]: 27: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,182 INFO L280 TraceCheckUtils]: 28: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,182 INFO L280 TraceCheckUtils]: 29: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,183 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,183 INFO L280 TraceCheckUtils]: 31: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,183 INFO L280 TraceCheckUtils]: 32: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,183 INFO L280 TraceCheckUtils]: 33: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,183 INFO L280 TraceCheckUtils]: 34: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,184 INFO L280 TraceCheckUtils]: 35: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,184 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {172458#true} {172613#(= 0 ~q_free~0)} #341#return; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,185 INFO L280 TraceCheckUtils]: 37: Hoare triple {172613#(= 0 ~q_free~0)} ~q_write_ev~0 := 2; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,185 INFO L280 TraceCheckUtils]: 38: Hoare triple {172613#(= 0 ~q_free~0)} assume !false; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,186 INFO L280 TraceCheckUtils]: 39: Hoare triple {172613#(= 0 ~q_free~0)} assume !(0 == ~q_free~0); {172459#false} is VALID [2020-07-10 20:35:03,186 INFO L280 TraceCheckUtils]: 40: Hoare triple {172459#false} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {172459#false} is VALID [2020-07-10 20:35:03,186 INFO L280 TraceCheckUtils]: 41: Hoare triple {172459#false} ~q_buf_0~0 := #t~nondet2; {172459#false} is VALID [2020-07-10 20:35:03,186 INFO L280 TraceCheckUtils]: 42: Hoare triple {172459#false} havoc #t~nondet2; {172459#false} is VALID [2020-07-10 20:35:03,187 INFO L280 TraceCheckUtils]: 43: Hoare triple {172459#false} ~p_last_write~0 := ~q_buf_0~0; {172459#false} is VALID [2020-07-10 20:35:03,187 INFO L280 TraceCheckUtils]: 44: Hoare triple {172459#false} ~p_num_write~0 := 1 + ~p_num_write~0; {172459#false} is VALID [2020-07-10 20:35:03,187 INFO L280 TraceCheckUtils]: 45: Hoare triple {172459#false} ~q_free~0 := 0; {172459#false} is VALID [2020-07-10 20:35:03,187 INFO L280 TraceCheckUtils]: 46: Hoare triple {172459#false} ~q_write_ev~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,187 INFO L263 TraceCheckUtils]: 47: Hoare triple {172459#false} call immediate_notify_threads(); {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:35:03,188 INFO L280 TraceCheckUtils]: 48: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,188 INFO L280 TraceCheckUtils]: 49: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,188 INFO L263 TraceCheckUtils]: 50: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,188 INFO L280 TraceCheckUtils]: 51: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,188 INFO L280 TraceCheckUtils]: 52: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,188 INFO L280 TraceCheckUtils]: 53: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,189 INFO L280 TraceCheckUtils]: 54: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,189 INFO L280 TraceCheckUtils]: 55: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,189 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,189 INFO L280 TraceCheckUtils]: 57: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,189 INFO L280 TraceCheckUtils]: 58: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,190 INFO L280 TraceCheckUtils]: 59: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,190 INFO L280 TraceCheckUtils]: 60: Hoare triple {172458#true} assume !(0 != ~tmp~0); {172458#true} is VALID [2020-07-10 20:35:03,190 INFO L263 TraceCheckUtils]: 61: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,190 INFO L280 TraceCheckUtils]: 62: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,191 INFO L280 TraceCheckUtils]: 63: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,191 INFO L280 TraceCheckUtils]: 64: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,191 INFO L280 TraceCheckUtils]: 65: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,191 INFO L280 TraceCheckUtils]: 66: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,191 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,192 INFO L280 TraceCheckUtils]: 68: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,192 INFO L280 TraceCheckUtils]: 69: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,192 INFO L280 TraceCheckUtils]: 70: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,192 INFO L280 TraceCheckUtils]: 71: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,192 INFO L280 TraceCheckUtils]: 72: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,192 INFO L275 TraceCheckUtils]: 73: Hoare quadruple {172458#true} {172459#false} #341#return; {172459#false} is VALID [2020-07-10 20:35:03,193 INFO L280 TraceCheckUtils]: 74: Hoare triple {172459#false} ~q_write_ev~0 := 2; {172459#false} is VALID [2020-07-10 20:35:03,193 INFO L280 TraceCheckUtils]: 75: Hoare triple {172459#false} assume !false; {172459#false} is VALID [2020-07-10 20:35:03,193 INFO L280 TraceCheckUtils]: 76: Hoare triple {172459#false} assume 0 == ~q_free~0; {172459#false} is VALID [2020-07-10 20:35:03,193 INFO L280 TraceCheckUtils]: 77: Hoare triple {172459#false} ~p_dw_st~0 := 2; {172459#false} is VALID [2020-07-10 20:35:03,193 INFO L280 TraceCheckUtils]: 78: Hoare triple {172459#false} ~p_dw_pc~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,194 INFO L280 TraceCheckUtils]: 79: Hoare triple {172459#false} assume true; {172459#false} is VALID [2020-07-10 20:35:03,194 INFO L275 TraceCheckUtils]: 80: Hoare quadruple {172459#false} {172458#true} #349#return; {172459#false} is VALID [2020-07-10 20:35:03,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,207 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,207 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume 1 == ~p_dw_pc~0; {172458#true} is VALID [2020-07-10 20:35:03,208 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} assume 1 == ~q_read_ev~0; {172458#true} is VALID [2020-07-10 20:35:03,208 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} ~__retres1~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,208 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,208 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,208 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 20:35:03,211 INFO L280 TraceCheckUtils]: 0: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,212 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,212 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,212 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,212 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,213 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,213 INFO L280 TraceCheckUtils]: 0: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,213 INFO L280 TraceCheckUtils]: 1: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,214 INFO L263 TraceCheckUtils]: 2: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,214 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,214 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} assume 1 == ~p_dw_pc~0; {172458#true} is VALID [2020-07-10 20:35:03,214 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} assume 1 == ~q_read_ev~0; {172458#true} is VALID [2020-07-10 20:35:03,214 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} ~__retres1~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,215 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,215 INFO L280 TraceCheckUtils]: 8: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,215 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,215 INFO L280 TraceCheckUtils]: 10: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,216 INFO L280 TraceCheckUtils]: 11: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,216 INFO L280 TraceCheckUtils]: 12: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,216 INFO L280 TraceCheckUtils]: 13: Hoare triple {172458#true} assume 0 != ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,216 INFO L280 TraceCheckUtils]: 14: Hoare triple {172458#true} ~p_dw_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,216 INFO L263 TraceCheckUtils]: 15: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,217 INFO L280 TraceCheckUtils]: 16: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,217 INFO L280 TraceCheckUtils]: 17: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,217 INFO L280 TraceCheckUtils]: 18: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,217 INFO L280 TraceCheckUtils]: 19: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,217 INFO L280 TraceCheckUtils]: 20: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,217 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,218 INFO L280 TraceCheckUtils]: 22: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,218 INFO L280 TraceCheckUtils]: 23: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,218 INFO L280 TraceCheckUtils]: 24: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,218 INFO L280 TraceCheckUtils]: 25: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,218 INFO L280 TraceCheckUtils]: 26: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,219 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {172458#true} {172459#false} #365#return; {172459#false} is VALID [2020-07-10 20:35:03,221 INFO L263 TraceCheckUtils]: 0: Hoare triple {172458#true} call ULTIMATE.init(); {172609#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:35:03,221 INFO L280 TraceCheckUtils]: 1: Hoare triple {172609#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_buf_0~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,221 INFO L280 TraceCheckUtils]: 2: Hoare triple {172458#true} ~q_free~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,222 INFO L280 TraceCheckUtils]: 3: Hoare triple {172458#true} ~q_read_ev~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,222 INFO L280 TraceCheckUtils]: 4: Hoare triple {172458#true} ~q_write_ev~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,222 INFO L280 TraceCheckUtils]: 5: Hoare triple {172458#true} ~p_num_write~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,222 INFO L280 TraceCheckUtils]: 6: Hoare triple {172458#true} ~p_last_write~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,222 INFO L280 TraceCheckUtils]: 7: Hoare triple {172458#true} ~p_dw_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,223 INFO L280 TraceCheckUtils]: 8: Hoare triple {172458#true} ~p_dw_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,223 INFO L280 TraceCheckUtils]: 9: Hoare triple {172458#true} ~p_dw_i~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,223 INFO L280 TraceCheckUtils]: 10: Hoare triple {172458#true} ~c_num_read~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,223 INFO L280 TraceCheckUtils]: 11: Hoare triple {172458#true} ~c_last_read~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,223 INFO L280 TraceCheckUtils]: 12: Hoare triple {172458#true} ~c_dr_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,223 INFO L280 TraceCheckUtils]: 13: Hoare triple {172458#true} ~c_dr_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,224 INFO L280 TraceCheckUtils]: 14: Hoare triple {172458#true} ~c_dr_i~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,224 INFO L280 TraceCheckUtils]: 15: Hoare triple {172458#true} ~a_t~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,224 INFO L280 TraceCheckUtils]: 16: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,224 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {172458#true} {172458#true} #361#return; {172458#true} is VALID [2020-07-10 20:35:03,224 INFO L263 TraceCheckUtils]: 18: Hoare triple {172458#true} call #t~ret8 := main(); {172458#true} is VALID [2020-07-10 20:35:03,225 INFO L280 TraceCheckUtils]: 19: Hoare triple {172458#true} havoc ~__retres1~3; {172458#true} is VALID [2020-07-10 20:35:03,226 INFO L263 TraceCheckUtils]: 20: Hoare triple {172458#true} call init_model(); {172610#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:35:03,226 INFO L280 TraceCheckUtils]: 21: Hoare triple {172610#(and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} ~q_free~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,226 INFO L280 TraceCheckUtils]: 22: Hoare triple {172458#true} ~q_write_ev~0 := 2; {172458#true} is VALID [2020-07-10 20:35:03,226 INFO L280 TraceCheckUtils]: 23: Hoare triple {172458#true} ~q_read_ev~0 := ~q_write_ev~0; {172458#true} is VALID [2020-07-10 20:35:03,227 INFO L280 TraceCheckUtils]: 24: Hoare triple {172458#true} ~p_num_write~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,227 INFO L280 TraceCheckUtils]: 25: Hoare triple {172458#true} ~p_dw_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,227 INFO L280 TraceCheckUtils]: 26: Hoare triple {172458#true} ~p_dw_i~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,227 INFO L280 TraceCheckUtils]: 27: Hoare triple {172458#true} ~c_num_read~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,227 INFO L280 TraceCheckUtils]: 28: Hoare triple {172458#true} ~c_dr_pc~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,228 INFO L280 TraceCheckUtils]: 29: Hoare triple {172458#true} ~c_dr_i~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,228 INFO L280 TraceCheckUtils]: 30: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,228 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {172458#true} {172458#true} #337#return; {172458#true} is VALID [2020-07-10 20:35:03,228 INFO L263 TraceCheckUtils]: 32: Hoare triple {172458#true} call start_simulation(); {172458#true} is VALID [2020-07-10 20:35:03,228 INFO L280 TraceCheckUtils]: 33: Hoare triple {172458#true} havoc ~kernel_st~0; {172458#true} is VALID [2020-07-10 20:35:03,228 INFO L280 TraceCheckUtils]: 34: Hoare triple {172458#true} havoc ~tmp~3; {172458#true} is VALID [2020-07-10 20:35:03,229 INFO L280 TraceCheckUtils]: 35: Hoare triple {172458#true} ~kernel_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,230 INFO L263 TraceCheckUtils]: 36: Hoare triple {172458#true} call init_threads(); {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:35:03,230 INFO L280 TraceCheckUtils]: 37: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} assume 1 == ~p_dw_i~0; {172458#true} is VALID [2020-07-10 20:35:03,230 INFO L280 TraceCheckUtils]: 38: Hoare triple {172458#true} ~p_dw_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,230 INFO L280 TraceCheckUtils]: 39: Hoare triple {172458#true} assume 1 == ~c_dr_i~0; {172458#true} is VALID [2020-07-10 20:35:03,230 INFO L280 TraceCheckUtils]: 40: Hoare triple {172458#true} ~c_dr_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,230 INFO L280 TraceCheckUtils]: 41: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,231 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {172458#true} {172458#true} #355#return; {172458#true} is VALID [2020-07-10 20:35:03,231 INFO L280 TraceCheckUtils]: 43: Hoare triple {172458#true} assume !false; {172458#true} is VALID [2020-07-10 20:35:03,231 INFO L280 TraceCheckUtils]: 44: Hoare triple {172458#true} ~kernel_st~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,231 INFO L263 TraceCheckUtils]: 45: Hoare triple {172458#true} call eval(); {172458#true} is VALID [2020-07-10 20:35:03,231 INFO L280 TraceCheckUtils]: 46: Hoare triple {172458#true} havoc ~tmp~1; {172458#true} is VALID [2020-07-10 20:35:03,232 INFO L280 TraceCheckUtils]: 47: Hoare triple {172458#true} havoc ~tmp___0~1; {172458#true} is VALID [2020-07-10 20:35:03,232 INFO L280 TraceCheckUtils]: 48: Hoare triple {172458#true} havoc ~tmp___1~0; {172458#true} is VALID [2020-07-10 20:35:03,232 INFO L280 TraceCheckUtils]: 49: Hoare triple {172458#true} assume !false; {172458#true} is VALID [2020-07-10 20:35:03,232 INFO L263 TraceCheckUtils]: 50: Hoare triple {172458#true} call #t~ret3 := exists_runnable_thread(); {172458#true} is VALID [2020-07-10 20:35:03,232 INFO L280 TraceCheckUtils]: 51: Hoare triple {172458#true} havoc ~__retres1~2; {172458#true} is VALID [2020-07-10 20:35:03,232 INFO L280 TraceCheckUtils]: 52: Hoare triple {172458#true} assume 0 == ~p_dw_st~0; {172458#true} is VALID [2020-07-10 20:35:03,233 INFO L280 TraceCheckUtils]: 53: Hoare triple {172458#true} ~__retres1~2 := 1; {172458#true} is VALID [2020-07-10 20:35:03,233 INFO L280 TraceCheckUtils]: 54: Hoare triple {172458#true} #res := ~__retres1~2; {172458#true} is VALID [2020-07-10 20:35:03,233 INFO L280 TraceCheckUtils]: 55: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,233 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {172458#true} {172458#true} #347#return; {172458#true} is VALID [2020-07-10 20:35:03,233 INFO L280 TraceCheckUtils]: 57: Hoare triple {172458#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,233 INFO L280 TraceCheckUtils]: 58: Hoare triple {172458#true} ~tmp___1~0 := #t~ret3; {172458#true} is VALID [2020-07-10 20:35:03,234 INFO L280 TraceCheckUtils]: 59: Hoare triple {172458#true} havoc #t~ret3; {172458#true} is VALID [2020-07-10 20:35:03,234 INFO L280 TraceCheckUtils]: 60: Hoare triple {172458#true} assume 0 != ~tmp___1~0; {172458#true} is VALID [2020-07-10 20:35:03,234 INFO L280 TraceCheckUtils]: 61: Hoare triple {172458#true} assume 0 == ~p_dw_st~0; {172458#true} is VALID [2020-07-10 20:35:03,234 INFO L280 TraceCheckUtils]: 62: Hoare triple {172458#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,234 INFO L280 TraceCheckUtils]: 63: Hoare triple {172458#true} ~tmp~1 := #t~nondet4; {172458#true} is VALID [2020-07-10 20:35:03,234 INFO L280 TraceCheckUtils]: 64: Hoare triple {172458#true} havoc #t~nondet4; {172458#true} is VALID [2020-07-10 20:35:03,235 INFO L280 TraceCheckUtils]: 65: Hoare triple {172458#true} assume 0 != ~tmp~1; {172458#true} is VALID [2020-07-10 20:35:03,235 INFO L280 TraceCheckUtils]: 66: Hoare triple {172458#true} ~p_dw_st~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,236 INFO L263 TraceCheckUtils]: 67: Hoare triple {172458#true} call do_write_p(); {172612#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} is VALID [2020-07-10 20:35:03,236 INFO L280 TraceCheckUtils]: 68: Hoare triple {172612#(and (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|))} assume 0 == ~p_dw_pc~0; {172458#true} is VALID [2020-07-10 20:35:03,236 INFO L280 TraceCheckUtils]: 69: Hoare triple {172458#true} assume !false; {172458#true} is VALID [2020-07-10 20:35:03,237 INFO L280 TraceCheckUtils]: 70: Hoare triple {172458#true} assume !(0 == ~q_free~0); {172458#true} is VALID [2020-07-10 20:35:03,237 INFO L280 TraceCheckUtils]: 71: Hoare triple {172458#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,237 INFO L280 TraceCheckUtils]: 72: Hoare triple {172458#true} ~q_buf_0~0 := #t~nondet2; {172458#true} is VALID [2020-07-10 20:35:03,237 INFO L280 TraceCheckUtils]: 73: Hoare triple {172458#true} havoc #t~nondet2; {172458#true} is VALID [2020-07-10 20:35:03,238 INFO L280 TraceCheckUtils]: 74: Hoare triple {172458#true} ~p_last_write~0 := ~q_buf_0~0; {172458#true} is VALID [2020-07-10 20:35:03,238 INFO L280 TraceCheckUtils]: 75: Hoare triple {172458#true} ~p_num_write~0 := 1 + ~p_num_write~0; {172458#true} is VALID [2020-07-10 20:35:03,239 INFO L280 TraceCheckUtils]: 76: Hoare triple {172458#true} ~q_free~0 := 0; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,239 INFO L280 TraceCheckUtils]: 77: Hoare triple {172613#(= 0 ~q_free~0)} ~q_write_ev~0 := 1; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,240 INFO L263 TraceCheckUtils]: 78: Hoare triple {172613#(= 0 ~q_free~0)} call immediate_notify_threads(); {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:35:03,241 INFO L280 TraceCheckUtils]: 79: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,241 INFO L280 TraceCheckUtils]: 80: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,241 INFO L263 TraceCheckUtils]: 81: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,241 INFO L280 TraceCheckUtils]: 82: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,241 INFO L280 TraceCheckUtils]: 83: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,241 INFO L280 TraceCheckUtils]: 84: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,242 INFO L280 TraceCheckUtils]: 85: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,242 INFO L280 TraceCheckUtils]: 86: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,242 INFO L275 TraceCheckUtils]: 87: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,242 INFO L280 TraceCheckUtils]: 88: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,242 INFO L280 TraceCheckUtils]: 89: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,243 INFO L280 TraceCheckUtils]: 90: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,243 INFO L280 TraceCheckUtils]: 91: Hoare triple {172458#true} assume !(0 != ~tmp~0); {172458#true} is VALID [2020-07-10 20:35:03,243 INFO L263 TraceCheckUtils]: 92: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,243 INFO L280 TraceCheckUtils]: 93: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,243 INFO L280 TraceCheckUtils]: 94: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,244 INFO L280 TraceCheckUtils]: 95: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,244 INFO L280 TraceCheckUtils]: 96: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,244 INFO L280 TraceCheckUtils]: 97: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,244 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,244 INFO L280 TraceCheckUtils]: 99: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,245 INFO L280 TraceCheckUtils]: 100: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,245 INFO L280 TraceCheckUtils]: 101: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,245 INFO L280 TraceCheckUtils]: 102: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,245 INFO L280 TraceCheckUtils]: 103: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,246 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {172458#true} {172613#(= 0 ~q_free~0)} #341#return; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,246 INFO L280 TraceCheckUtils]: 105: Hoare triple {172613#(= 0 ~q_free~0)} ~q_write_ev~0 := 2; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,247 INFO L280 TraceCheckUtils]: 106: Hoare triple {172613#(= 0 ~q_free~0)} assume !false; {172613#(= 0 ~q_free~0)} is VALID [2020-07-10 20:35:03,248 INFO L280 TraceCheckUtils]: 107: Hoare triple {172613#(= 0 ~q_free~0)} assume !(0 == ~q_free~0); {172459#false} is VALID [2020-07-10 20:35:03,248 INFO L280 TraceCheckUtils]: 108: Hoare triple {172459#false} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {172459#false} is VALID [2020-07-10 20:35:03,248 INFO L280 TraceCheckUtils]: 109: Hoare triple {172459#false} ~q_buf_0~0 := #t~nondet2; {172459#false} is VALID [2020-07-10 20:35:03,248 INFO L280 TraceCheckUtils]: 110: Hoare triple {172459#false} havoc #t~nondet2; {172459#false} is VALID [2020-07-10 20:35:03,248 INFO L280 TraceCheckUtils]: 111: Hoare triple {172459#false} ~p_last_write~0 := ~q_buf_0~0; {172459#false} is VALID [2020-07-10 20:35:03,249 INFO L280 TraceCheckUtils]: 112: Hoare triple {172459#false} ~p_num_write~0 := 1 + ~p_num_write~0; {172459#false} is VALID [2020-07-10 20:35:03,249 INFO L280 TraceCheckUtils]: 113: Hoare triple {172459#false} ~q_free~0 := 0; {172459#false} is VALID [2020-07-10 20:35:03,249 INFO L280 TraceCheckUtils]: 114: Hoare triple {172459#false} ~q_write_ev~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,249 INFO L263 TraceCheckUtils]: 115: Hoare triple {172459#false} call immediate_notify_threads(); {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:35:03,249 INFO L280 TraceCheckUtils]: 116: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,249 INFO L280 TraceCheckUtils]: 117: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,250 INFO L263 TraceCheckUtils]: 118: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,250 INFO L280 TraceCheckUtils]: 119: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,250 INFO L280 TraceCheckUtils]: 120: Hoare triple {172458#true} assume !(1 == ~p_dw_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,250 INFO L280 TraceCheckUtils]: 121: Hoare triple {172458#true} ~__retres1~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,250 INFO L280 TraceCheckUtils]: 122: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,251 INFO L280 TraceCheckUtils]: 123: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,251 INFO L275 TraceCheckUtils]: 124: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,251 INFO L280 TraceCheckUtils]: 125: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,251 INFO L280 TraceCheckUtils]: 126: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,251 INFO L280 TraceCheckUtils]: 127: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,252 INFO L280 TraceCheckUtils]: 128: Hoare triple {172458#true} assume !(0 != ~tmp~0); {172458#true} is VALID [2020-07-10 20:35:03,252 INFO L263 TraceCheckUtils]: 129: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,252 INFO L280 TraceCheckUtils]: 130: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,252 INFO L280 TraceCheckUtils]: 131: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,252 INFO L280 TraceCheckUtils]: 132: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,252 INFO L280 TraceCheckUtils]: 133: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,253 INFO L280 TraceCheckUtils]: 134: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,253 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,253 INFO L280 TraceCheckUtils]: 136: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,253 INFO L280 TraceCheckUtils]: 137: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,253 INFO L280 TraceCheckUtils]: 138: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,254 INFO L280 TraceCheckUtils]: 139: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,254 INFO L280 TraceCheckUtils]: 140: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,254 INFO L275 TraceCheckUtils]: 141: Hoare quadruple {172458#true} {172459#false} #341#return; {172459#false} is VALID [2020-07-10 20:35:03,254 INFO L280 TraceCheckUtils]: 142: Hoare triple {172459#false} ~q_write_ev~0 := 2; {172459#false} is VALID [2020-07-10 20:35:03,254 INFO L280 TraceCheckUtils]: 143: Hoare triple {172459#false} assume !false; {172459#false} is VALID [2020-07-10 20:35:03,254 INFO L280 TraceCheckUtils]: 144: Hoare triple {172459#false} assume 0 == ~q_free~0; {172459#false} is VALID [2020-07-10 20:35:03,255 INFO L280 TraceCheckUtils]: 145: Hoare triple {172459#false} ~p_dw_st~0 := 2; {172459#false} is VALID [2020-07-10 20:35:03,255 INFO L280 TraceCheckUtils]: 146: Hoare triple {172459#false} ~p_dw_pc~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,255 INFO L280 TraceCheckUtils]: 147: Hoare triple {172459#false} assume true; {172459#false} is VALID [2020-07-10 20:35:03,255 INFO L275 TraceCheckUtils]: 148: Hoare quadruple {172459#false} {172458#true} #349#return; {172459#false} is VALID [2020-07-10 20:35:03,255 INFO L280 TraceCheckUtils]: 149: Hoare triple {172459#false} assume 0 == ~c_dr_st~0; {172459#false} is VALID [2020-07-10 20:35:03,255 INFO L280 TraceCheckUtils]: 150: Hoare triple {172459#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {172459#false} is VALID [2020-07-10 20:35:03,256 INFO L280 TraceCheckUtils]: 151: Hoare triple {172459#false} ~tmp___0~1 := #t~nondet5; {172459#false} is VALID [2020-07-10 20:35:03,256 INFO L280 TraceCheckUtils]: 152: Hoare triple {172459#false} havoc #t~nondet5; {172459#false} is VALID [2020-07-10 20:35:03,256 INFO L280 TraceCheckUtils]: 153: Hoare triple {172459#false} assume 0 != ~tmp___0~1; {172459#false} is VALID [2020-07-10 20:35:03,256 INFO L280 TraceCheckUtils]: 154: Hoare triple {172459#false} ~c_dr_st~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,256 INFO L263 TraceCheckUtils]: 155: Hoare triple {172459#false} call do_read_c(); {172459#false} is VALID [2020-07-10 20:35:03,256 INFO L280 TraceCheckUtils]: 156: Hoare triple {172459#false} havoc ~a~0; {172459#false} is VALID [2020-07-10 20:35:03,257 INFO L280 TraceCheckUtils]: 157: Hoare triple {172459#false} assume 0 == ~c_dr_pc~0; {172459#false} is VALID [2020-07-10 20:35:03,257 INFO L280 TraceCheckUtils]: 158: Hoare triple {172459#false} assume !false; {172459#false} is VALID [2020-07-10 20:35:03,257 INFO L280 TraceCheckUtils]: 159: Hoare triple {172459#false} assume !(1 == ~q_free~0); {172459#false} is VALID [2020-07-10 20:35:03,257 INFO L280 TraceCheckUtils]: 160: Hoare triple {172459#false} ~a~0 := ~q_buf_0~0; {172459#false} is VALID [2020-07-10 20:35:03,257 INFO L280 TraceCheckUtils]: 161: Hoare triple {172459#false} ~c_last_read~0 := ~a~0; {172459#false} is VALID [2020-07-10 20:35:03,257 INFO L280 TraceCheckUtils]: 162: Hoare triple {172459#false} ~c_num_read~0 := 1 + ~c_num_read~0; {172459#false} is VALID [2020-07-10 20:35:03,258 INFO L280 TraceCheckUtils]: 163: Hoare triple {172459#false} ~q_free~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,258 INFO L280 TraceCheckUtils]: 164: Hoare triple {172459#false} ~q_read_ev~0 := 1; {172459#false} is VALID [2020-07-10 20:35:03,258 INFO L263 TraceCheckUtils]: 165: Hoare triple {172459#false} call immediate_notify_threads(); {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2020-07-10 20:35:03,258 INFO L280 TraceCheckUtils]: 166: Hoare triple {172611#(and (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,258 INFO L280 TraceCheckUtils]: 167: Hoare triple {172458#true} havoc ~tmp___0~0; {172458#true} is VALID [2020-07-10 20:35:03,258 INFO L263 TraceCheckUtils]: 168: Hoare triple {172458#true} call #t~ret0 := is_do_write_p_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,259 INFO L280 TraceCheckUtils]: 169: Hoare triple {172458#true} havoc ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,259 INFO L280 TraceCheckUtils]: 170: Hoare triple {172458#true} assume 1 == ~p_dw_pc~0; {172458#true} is VALID [2020-07-10 20:35:03,259 INFO L280 TraceCheckUtils]: 171: Hoare triple {172458#true} assume 1 == ~q_read_ev~0; {172458#true} is VALID [2020-07-10 20:35:03,259 INFO L280 TraceCheckUtils]: 172: Hoare triple {172458#true} ~__retres1~0 := 1; {172458#true} is VALID [2020-07-10 20:35:03,259 INFO L280 TraceCheckUtils]: 173: Hoare triple {172458#true} #res := ~__retres1~0; {172458#true} is VALID [2020-07-10 20:35:03,259 INFO L280 TraceCheckUtils]: 174: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,260 INFO L275 TraceCheckUtils]: 175: Hoare quadruple {172458#true} {172458#true} #343#return; {172458#true} is VALID [2020-07-10 20:35:03,260 INFO L280 TraceCheckUtils]: 176: Hoare triple {172458#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,260 INFO L280 TraceCheckUtils]: 177: Hoare triple {172458#true} ~tmp~0 := #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,260 INFO L280 TraceCheckUtils]: 178: Hoare triple {172458#true} havoc #t~ret0; {172458#true} is VALID [2020-07-10 20:35:03,260 INFO L280 TraceCheckUtils]: 179: Hoare triple {172458#true} assume 0 != ~tmp~0; {172458#true} is VALID [2020-07-10 20:35:03,260 INFO L280 TraceCheckUtils]: 180: Hoare triple {172458#true} ~p_dw_st~0 := 0; {172458#true} is VALID [2020-07-10 20:35:03,261 INFO L263 TraceCheckUtils]: 181: Hoare triple {172458#true} call #t~ret1 := is_do_read_c_triggered(); {172458#true} is VALID [2020-07-10 20:35:03,261 INFO L280 TraceCheckUtils]: 182: Hoare triple {172458#true} havoc ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,261 INFO L280 TraceCheckUtils]: 183: Hoare triple {172458#true} assume !(1 == ~c_dr_pc~0); {172458#true} is VALID [2020-07-10 20:35:03,261 INFO L280 TraceCheckUtils]: 184: Hoare triple {172458#true} ~__retres1~1 := 0; {172458#true} is VALID [2020-07-10 20:35:03,261 INFO L280 TraceCheckUtils]: 185: Hoare triple {172458#true} #res := ~__retres1~1; {172458#true} is VALID [2020-07-10 20:35:03,262 INFO L280 TraceCheckUtils]: 186: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,262 INFO L275 TraceCheckUtils]: 187: Hoare quadruple {172458#true} {172458#true} #345#return; {172458#true} is VALID [2020-07-10 20:35:03,262 INFO L280 TraceCheckUtils]: 188: Hoare triple {172458#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647; {172458#true} is VALID [2020-07-10 20:35:03,262 INFO L280 TraceCheckUtils]: 189: Hoare triple {172458#true} ~tmp___0~0 := #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,262 INFO L280 TraceCheckUtils]: 190: Hoare triple {172458#true} havoc #t~ret1; {172458#true} is VALID [2020-07-10 20:35:03,262 INFO L280 TraceCheckUtils]: 191: Hoare triple {172458#true} assume !(0 != ~tmp___0~0); {172458#true} is VALID [2020-07-10 20:35:03,263 INFO L280 TraceCheckUtils]: 192: Hoare triple {172458#true} assume true; {172458#true} is VALID [2020-07-10 20:35:03,263 INFO L275 TraceCheckUtils]: 193: Hoare quadruple {172458#true} {172459#false} #365#return; {172459#false} is VALID [2020-07-10 20:35:03,263 INFO L280 TraceCheckUtils]: 194: Hoare triple {172459#false} ~q_read_ev~0 := 2; {172459#false} is VALID [2020-07-10 20:35:03,263 INFO L280 TraceCheckUtils]: 195: Hoare triple {172459#false} assume ~p_last_write~0 == ~c_last_read~0; {172459#false} is VALID [2020-07-10 20:35:03,263 INFO L280 TraceCheckUtils]: 196: Hoare triple {172459#false} assume !(~p_num_write~0 == ~c_num_read~0); {172459#false} is VALID [2020-07-10 20:35:03,264 INFO L263 TraceCheckUtils]: 197: Hoare triple {172459#false} call error(); {172459#false} is VALID [2020-07-10 20:35:03,264 INFO L280 TraceCheckUtils]: 198: Hoare triple {172459#false} assume !false; {172459#false} is VALID [2020-07-10 20:35:03,293 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-10 20:35:03,294 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 20:35:03,294 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1686193315] [2020-07-10 20:35:03,294 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 20:35:03,294 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2020-07-10 20:35:03,295 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [585164562] [2020-07-10 20:35:03,295 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 199 [2020-07-10 20:35:03,296 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 20:35:03,296 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-10 20:35:03,454 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:35:03,454 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-10 20:35:03,454 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 20:35:03,455 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-10 20:35:03,455 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2020-07-10 20:35:03,455 INFO L87 Difference]: Start difference. First operand 2469 states and 2948 transitions. Second operand 7 states. [2020-07-10 20:35:17,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:35:17,616 INFO L93 Difference]: Finished difference Result 3019 states and 3633 transitions. [2020-07-10 20:35:17,616 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2020-07-10 20:35:17,616 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 199 [2020-07-10 20:35:17,617 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 20:35:17,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:35:17,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 501 transitions. [2020-07-10 20:35:17,621 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-10 20:35:17,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 501 transitions. [2020-07-10 20:35:17,625 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 501 transitions. [2020-07-10 20:35:18,393 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 501 edges. 501 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:35:18,396 INFO L225 Difference]: With dead ends: 3019 [2020-07-10 20:35:18,396 INFO L226 Difference]: Without dead ends: 0 [2020-07-10 20:35:18,406 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=56, Invalid=100, Unknown=0, NotChecked=0, Total=156 [2020-07-10 20:35:18,406 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2020-07-10 20:35:18,406 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2020-07-10 20:35:18,406 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 20:35:18,406 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2020-07-10 20:35:18,406 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2020-07-10 20:35:18,407 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2020-07-10 20:35:18,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:35:18,407 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2020-07-10 20:35:18,407 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-10 20:35:18,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:35:18,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:35:18,407 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2020-07-10 20:35:18,408 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2020-07-10 20:35:18,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 20:35:18,408 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2020-07-10 20:35:18,408 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-10 20:35:18,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:35:18,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 20:35:18,408 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 20:35:18,409 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 20:35:18,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2020-07-10 20:35:18,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2020-07-10 20:35:18,409 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 199 [2020-07-10 20:35:18,409 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 20:35:18,410 INFO L479 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2020-07-10 20:35:18,410 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-10 20:35:18,410 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2020-07-10 20:35:18,410 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 20:35:18,410 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-10 20:35:18,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 20:35:18,410 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2020-07-10 20:35:18,413 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2020-07-10 20:35:20,461 WARN L193 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 94 DAG size of output: 64 [2020-07-10 20:35:21,045 WARN L193 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 153 DAG size of output: 100 [2020-07-10 20:35:21,268 WARN L193 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 153 DAG size of output: 100 [2020-07-10 20:35:24,887 WARN L193 SmtUtils]: Spent 193.00 ms on a formula simplification. DAG size of input: 161 DAG size of output: 90 [2020-07-10 20:35:25,023 WARN L193 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 142 DAG size of output: 42 [2020-07-10 20:35:39,860 WARN L193 SmtUtils]: Spent 377.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:35:40,251 WARN L193 SmtUtils]: Spent 378.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:35:40,599 WARN L193 SmtUtils]: Spent 259.00 ms on a formula simplification. DAG size of input: 99 DAG size of output: 71 [2020-07-10 20:35:41,095 WARN L193 SmtUtils]: Spent 402.00 ms on a formula simplification. DAG size of input: 104 DAG size of output: 60 [2020-07-10 20:35:41,380 WARN L193 SmtUtils]: Spent 209.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 36 [2020-07-10 20:35:41,897 WARN L193 SmtUtils]: Spent 366.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:35:42,079 WARN L193 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 48 [2020-07-10 20:35:42,451 WARN L193 SmtUtils]: Spent 272.00 ms on a formula simplification. DAG size of input: 100 DAG size of output: 70 [2020-07-10 20:35:42,928 WARN L193 SmtUtils]: Spent 386.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 71 [2020-07-10 20:35:43,665 WARN L193 SmtUtils]: Spent 651.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 67 [2020-07-10 20:35:44,684 WARN L193 SmtUtils]: Spent 904.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 104 [2020-07-10 20:35:44,842 WARN L193 SmtUtils]: Spent 134.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 62 [2020-07-10 20:35:45,137 WARN L193 SmtUtils]: Spent 184.00 ms on a formula simplification. DAG size of input: 93 DAG size of output: 49 [2020-07-10 20:35:45,638 WARN L193 SmtUtils]: Spent 164.00 ms on a formula simplification. DAG size of input: 100 DAG size of output: 34 [2020-07-10 20:35:47,184 WARN L193 SmtUtils]: Spent 1.47 s on a formula simplification. DAG size of input: 179 DAG size of output: 94 [2020-07-10 20:35:48,773 WARN L193 SmtUtils]: Spent 828.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 75 [2020-07-10 20:35:49,738 WARN L193 SmtUtils]: Spent 867.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 112 [2020-07-10 20:35:50,940 WARN L193 SmtUtils]: Spent 1.08 s on a formula simplification. DAG size of input: 142 DAG size of output: 108 [2020-07-10 20:35:51,123 WARN L193 SmtUtils]: Spent 105.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 48 [2020-07-10 20:35:52,313 WARN L193 SmtUtils]: Spent 1.08 s on a formula simplification. DAG size of input: 142 DAG size of output: 108 [2020-07-10 20:35:53,089 WARN L193 SmtUtils]: Spent 659.00 ms on a formula simplification. DAG size of input: 134 DAG size of output: 88 [2020-07-10 20:35:54,320 WARN L193 SmtUtils]: Spent 1.12 s on a formula simplification. DAG size of input: 142 DAG size of output: 108 [2020-07-10 20:35:57,524 WARN L193 SmtUtils]: Spent 2.91 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:35:58,422 WARN L193 SmtUtils]: Spent 262.00 ms on a formula simplification. DAG size of input: 109 DAG size of output: 50 [2020-07-10 20:35:59,016 WARN L193 SmtUtils]: Spent 517.00 ms on a formula simplification. DAG size of input: 91 DAG size of output: 71 [2020-07-10 20:35:59,614 WARN L193 SmtUtils]: Spent 504.00 ms on a formula simplification. DAG size of input: 103 DAG size of output: 67 [2020-07-10 20:36:00,483 WARN L193 SmtUtils]: Spent 235.00 ms on a formula simplification. DAG size of input: 94 DAG size of output: 74 [2020-07-10 20:36:01,248 WARN L193 SmtUtils]: Spent 568.00 ms on a formula simplification. DAG size of input: 135 DAG size of output: 103 [2020-07-10 20:36:02,180 WARN L193 SmtUtils]: Spent 840.00 ms on a formula simplification. DAG size of input: 142 DAG size of output: 83 [2020-07-10 20:36:02,819 WARN L193 SmtUtils]: Spent 323.00 ms on a formula simplification. DAG size of input: 85 DAG size of output: 68 [2020-07-10 20:36:02,961 WARN L193 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 62 [2020-07-10 20:36:03,268 WARN L193 SmtUtils]: Spent 141.00 ms on a formula simplification. DAG size of input: 82 DAG size of output: 67 [2020-07-10 20:36:03,758 WARN L193 SmtUtils]: Spent 394.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 69 [2020-07-10 20:36:04,378 WARN L193 SmtUtils]: Spent 522.00 ms on a formula simplification. DAG size of input: 86 DAG size of output: 74 [2020-07-10 20:36:05,575 WARN L193 SmtUtils]: Spent 1.10 s on a formula simplification. DAG size of input: 172 DAG size of output: 79 [2020-07-10 20:36:06,219 WARN L193 SmtUtils]: Spent 569.00 ms on a formula simplification. DAG size of input: 137 DAG size of output: 69 [2020-07-10 20:36:06,331 WARN L193 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 33 [2020-07-10 20:36:07,786 WARN L193 SmtUtils]: Spent 387.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:36:08,186 WARN L193 SmtUtils]: Spent 387.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:36:09,081 WARN L193 SmtUtils]: Spent 284.00 ms on a formula simplification. DAG size of input: 99 DAG size of output: 67 [2020-07-10 20:36:09,488 WARN L193 SmtUtils]: Spent 385.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:36:10,452 WARN L193 SmtUtils]: Spent 671.00 ms on a formula simplification. DAG size of input: 134 DAG size of output: 88 [2020-07-10 20:36:10,568 WARN L193 SmtUtils]: Spent 100.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 33 [2020-07-10 20:36:11,237 WARN L193 SmtUtils]: Spent 301.00 ms on a formula simplification. DAG size of input: 102 DAG size of output: 53 [2020-07-10 20:36:14,361 WARN L193 SmtUtils]: Spent 2.97 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:36:17,468 WARN L193 SmtUtils]: Spent 2.96 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:36:17,605 WARN L193 SmtUtils]: Spent 122.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 50 [2020-07-10 20:36:17,839 WARN L193 SmtUtils]: Spent 174.00 ms on a formula simplification. DAG size of input: 98 DAG size of output: 33 [2020-07-10 20:36:18,381 WARN L193 SmtUtils]: Spent 197.00 ms on a formula simplification. DAG size of input: 105 DAG size of output: 42 [2020-07-10 20:36:18,518 WARN L193 SmtUtils]: Spent 126.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 62 [2020-07-10 20:36:19,510 WARN L193 SmtUtils]: Spent 888.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 104 [2020-07-10 20:36:19,895 WARN L193 SmtUtils]: Spent 292.00 ms on a formula simplification. DAG size of input: 102 DAG size of output: 72 [2020-07-10 20:36:20,516 WARN L193 SmtUtils]: Spent 536.00 ms on a formula simplification. DAG size of input: 124 DAG size of output: 76 [2020-07-10 20:36:21,829 WARN L193 SmtUtils]: Spent 1.22 s on a formula simplification. DAG size of input: 159 DAG size of output: 103 [2020-07-10 20:36:22,339 WARN L193 SmtUtils]: Spent 427.00 ms on a formula simplification. DAG size of input: 104 DAG size of output: 60 [2020-07-10 20:36:22,972 WARN L193 SmtUtils]: Spent 552.00 ms on a formula simplification. DAG size of input: 105 DAG size of output: 60 [2020-07-10 20:36:23,528 WARN L193 SmtUtils]: Spent 474.00 ms on a formula simplification. DAG size of input: 109 DAG size of output: 65 [2020-07-10 20:36:24,028 WARN L193 SmtUtils]: Spent 139.00 ms on a formula simplification. DAG size of input: 82 DAG size of output: 67 [2020-07-10 20:36:24,339 WARN L193 SmtUtils]: Spent 233.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 40 [2020-07-10 20:36:24,840 WARN L193 SmtUtils]: Spent 422.00 ms on a formula simplification. DAG size of input: 104 DAG size of output: 60 [2020-07-10 20:36:25,369 WARN L193 SmtUtils]: Spent 442.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 63 [2020-07-10 20:36:25,894 WARN L193 SmtUtils]: Spent 424.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:36:26,394 WARN L193 SmtUtils]: Spent 403.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 71 [2020-07-10 20:36:26,932 WARN L193 SmtUtils]: Spent 450.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 63 [2020-07-10 20:36:28,191 WARN L193 SmtUtils]: Spent 1.14 s on a formula simplification. DAG size of input: 142 DAG size of output: 108 [2020-07-10 20:36:31,251 WARN L193 SmtUtils]: Spent 2.95 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:36:31,834 WARN L193 SmtUtils]: Spent 462.00 ms on a formula simplification. DAG size of input: 75 DAG size of output: 66 [2020-07-10 20:36:34,949 WARN L193 SmtUtils]: Spent 3.00 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:36:36,157 WARN L193 SmtUtils]: Spent 1.12 s on a formula simplification. DAG size of input: 207 DAG size of output: 64 [2020-07-10 20:36:36,530 WARN L193 SmtUtils]: Spent 199.00 ms on a formula simplification. DAG size of input: 105 DAG size of output: 42 [2020-07-10 20:36:37,223 WARN L193 SmtUtils]: Spent 605.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 66 [2020-07-10 20:36:37,909 WARN L193 SmtUtils]: Spent 604.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 66 [2020-07-10 20:36:41,064 WARN L193 SmtUtils]: Spent 3.00 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:36:41,181 WARN L193 SmtUtils]: Spent 100.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 33 [2020-07-10 20:36:42,825 WARN L193 SmtUtils]: Spent 1.53 s on a formula simplification. DAG size of input: 179 DAG size of output: 94 [2020-07-10 20:36:42,972 WARN L193 SmtUtils]: Spent 135.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 62 [2020-07-10 20:36:43,681 WARN L193 SmtUtils]: Spent 632.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 66 [2020-07-10 20:36:43,841 WARN L193 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 33 [2020-07-10 20:36:44,608 WARN L193 SmtUtils]: Spent 581.00 ms on a formula simplification. DAG size of input: 92 DAG size of output: 74 [2020-07-10 20:36:46,257 WARN L193 SmtUtils]: Spent 278.00 ms on a formula simplification. DAG size of input: 109 DAG size of output: 50 [2020-07-10 20:36:46,467 WARN L193 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 33 [2020-07-10 20:36:47,612 WARN L193 SmtUtils]: Spent 309.00 ms on a formula simplification. DAG size of input: 99 DAG size of output: 67 [2020-07-10 20:36:48,122 WARN L193 SmtUtils]: Spent 413.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 69 [2020-07-10 20:36:49,233 WARN L193 SmtUtils]: Spent 789.00 ms on a formula simplification. DAG size of input: 127 DAG size of output: 66 [2020-07-10 20:36:49,522 WARN L193 SmtUtils]: Spent 189.00 ms on a formula simplification. DAG size of input: 103 DAG size of output: 39 [2020-07-10 20:36:53,233 WARN L193 SmtUtils]: Spent 3.08 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:36:54,241 WARN L193 SmtUtils]: Spent 916.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 112 [2020-07-10 20:36:54,775 WARN L193 SmtUtils]: Spent 454.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 63 [2020-07-10 20:36:54,985 WARN L193 SmtUtils]: Spent 146.00 ms on a formula simplification. DAG size of input: 95 DAG size of output: 37 [2020-07-10 20:36:55,983 WARN L193 SmtUtils]: Spent 905.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 112 [2020-07-10 20:36:57,696 WARN L193 SmtUtils]: Spent 1.62 s on a formula simplification. DAG size of input: 178 DAG size of output: 110 [2020-07-10 20:37:00,854 WARN L193 SmtUtils]: Spent 3.04 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:37:01,430 WARN L193 SmtUtils]: Spent 496.00 ms on a formula simplification. DAG size of input: 75 DAG size of output: 66 [2020-07-10 20:37:02,438 WARN L193 SmtUtils]: Spent 909.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 112 [2020-07-10 20:37:02,951 WARN L193 SmtUtils]: Spent 421.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 71 [2020-07-10 20:37:03,067 WARN L193 SmtUtils]: Spent 103.00 ms on a formula simplification. DAG size of input: 53 DAG size of output: 44 [2020-07-10 20:37:03,304 WARN L193 SmtUtils]: Spent 116.00 ms on a formula simplification. DAG size of input: 114 DAG size of output: 1 [2020-07-10 20:37:04,048 WARN L193 SmtUtils]: Spent 659.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 81 [2020-07-10 20:37:04,450 WARN L193 SmtUtils]: Spent 319.00 ms on a formula simplification. DAG size of input: 110 DAG size of output: 77 [2020-07-10 20:37:04,774 WARN L193 SmtUtils]: Spent 245.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 40 [2020-07-10 20:37:07,920 WARN L193 SmtUtils]: Spent 3.04 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:37:09,019 WARN L193 SmtUtils]: Spent 937.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 104 [2020-07-10 20:37:09,839 WARN L193 SmtUtils]: Spent 717.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 96 [2020-07-10 20:37:10,258 WARN L193 SmtUtils]: Spent 337.00 ms on a formula simplification. DAG size of input: 85 DAG size of output: 68 [2020-07-10 20:37:10,973 WARN L193 SmtUtils]: Spent 623.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 66 [2020-07-10 20:37:11,391 WARN L193 SmtUtils]: Spent 407.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 76 [2020-07-10 20:37:12,067 WARN L193 SmtUtils]: Spent 580.00 ms on a formula simplification. DAG size of input: 88 DAG size of output: 76 [2020-07-10 20:37:12,855 WARN L193 SmtUtils]: Spent 699.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 67 [2020-07-10 20:37:13,263 WARN L193 SmtUtils]: Spent 317.00 ms on a formula simplification. DAG size of input: 98 DAG size of output: 66 [2020-07-10 20:37:13,682 WARN L193 SmtUtils]: Spent 321.00 ms on a formula simplification. DAG size of input: 110 DAG size of output: 77 [2020-07-10 20:37:16,910 WARN L193 SmtUtils]: Spent 3.10 s on a formula simplification. DAG size of input: 172 DAG size of output: 132 [2020-07-10 20:37:17,323 WARN L193 SmtUtils]: Spent 323.00 ms on a formula simplification. DAG size of input: 110 DAG size of output: 77 [2020-07-10 20:37:17,613 WARN L193 SmtUtils]: Spent 195.00 ms on a formula simplification. DAG size of input: 93 DAG size of output: 49 [2020-07-10 20:37:18,591 WARN L193 SmtUtils]: Spent 897.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 75 [2020-07-10 20:37:18,829 INFO L264 CegarLoopResult]: At program point L225(line 225) the Hoare annotation is: (let ((.cse4 (= ~p_dw_pc~0 ~q_free~0)) (.cse7 (not (<= ~p_num_write~0 0))) (.cse8 (not (<= 0 ~p_num_write~0))) (.cse0 (not (= 0 ~p_dw_st~0))) (.cse1 (not (= 1 ~p_dw_i~0))) (.cse2 (not (<= ~p_num_write~0 ~c_num_read~0))) (.cse3 (not (<= ~c_num_read~0 ~p_num_write~0))) (.cse5 (not (= 1 ~q_free~0))) (.cse6 (not (<= 2 ~c_dr_st~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) .cse1 .cse2 (= 1 ~q_read_ev~0) .cse3 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) .cse5 .cse6))) [2020-07-10 20:37:18,829 INFO L271 CegarLoopResult]: At program point exists_runnable_threadEXIT(lines 210 229) the Hoare annotation is: true [2020-07-10 20:37:18,830 INFO L264 CegarLoopResult]: At program point L219(line 219) the Hoare annotation is: (let ((.cse4 (= ~p_dw_pc~0 ~q_free~0)) (.cse7 (not (<= ~p_num_write~0 0))) (.cse8 (not (<= 0 ~p_num_write~0))) (.cse9 (not (= 1 ~p_dw_pc~0))) (.cse0 (not (= 0 ~p_dw_st~0))) (.cse1 (not (= 1 ~p_dw_i~0))) (.cse2 (not (<= ~p_num_write~0 ~c_num_read~0))) (.cse3 (not (<= ~c_num_read~0 ~p_num_write~0))) (.cse5 (not (= 1 ~q_free~0))) (.cse6 (not (<= 2 ~c_dr_st~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or .cse9 .cse1 .cse6 (not (<= 2 ~p_dw_st~0))) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or .cse9 (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) .cse1 .cse2 (= 1 ~q_read_ev~0) .cse3 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) .cse5 .cse6))) [2020-07-10 20:37:18,830 INFO L264 CegarLoopResult]: At program point L218(lines 218 223) the Hoare annotation is: (let ((.cse4 (= ~p_dw_pc~0 ~q_free~0)) (.cse7 (not (<= ~p_num_write~0 0))) (.cse8 (not (<= 0 ~p_num_write~0))) (.cse0 (not (= 0 ~p_dw_st~0))) (.cse1 (not (= 1 ~p_dw_i~0))) (.cse2 (not (<= ~p_num_write~0 ~c_num_read~0))) (.cse3 (not (<= ~c_num_read~0 ~p_num_write~0))) (.cse5 (not (= 1 ~q_free~0))) (.cse6 (not (<= 2 ~c_dr_st~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) .cse1 .cse2 (= 1 ~q_read_ev~0) .cse3 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) .cse5 .cse6))) [2020-07-10 20:37:18,831 INFO L264 CegarLoopResult]: At program point L215(line 215) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_pc~0))) (.cse2 (not (= 1 ~p_dw_i~0))) (.cse3 (not (<= 2 ~p_dw_st~0)))) (and (let ((.cse1 (+ ~c_num_read~0 1))) (or .cse0 (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= ~p_num_write~0 .cse1)) .cse2 (not (= 0 ~q_free~0)) .cse3 (not (<= .cse1 ~p_num_write~0)))) (or .cse0 .cse2 (not (<= 2 ~c_dr_st~0)) .cse3))) [2020-07-10 20:37:18,831 INFO L271 CegarLoopResult]: At program point L214(lines 214 224) the Hoare annotation is: true [2020-07-10 20:37:18,831 INFO L271 CegarLoopResult]: At program point exists_runnable_threadENTRY(lines 210 229) the Hoare annotation is: true [2020-07-10 20:37:18,831 INFO L271 CegarLoopResult]: At program point L226(lines 213 228) the Hoare annotation is: true [2020-07-10 20:37:18,831 INFO L271 CegarLoopResult]: At program point exists_runnable_threadFINAL(lines 210 229) the Hoare annotation is: true [2020-07-10 20:37:18,831 INFO L264 CegarLoopResult]: At program point init_threadsEXIT(lines 192 209) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= 0 ~p_dw_st~0) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,832 INFO L264 CegarLoopResult]: At program point init_threadsENTRY(lines 192 209) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (and (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 0 ~p_dw_st~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,832 INFO L264 CegarLoopResult]: At program point L204(line 204) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (and (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 0 ~p_dw_st~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,832 INFO L264 CegarLoopResult]: At program point L202(line 202) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (and (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 0 ~p_dw_st~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,832 INFO L264 CegarLoopResult]: At program point L201-1(lines 192 209) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= 0 ~p_dw_st~0) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,832 INFO L264 CegarLoopResult]: At program point L199(line 199) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,832 INFO L264 CegarLoopResult]: At program point L197(line 197) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (and (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 0 ~p_dw_st~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,833 INFO L264 CegarLoopResult]: At program point L196-1(lines 195 208) the Hoare annotation is: (or (not (<= ~c_dr_pc~0 0)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= ~p_dw_pc~0 ~q_free~0) (not (= 1 ~q_free~0)) (and (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 0 ~p_dw_st~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) [2020-07-10 20:37:18,833 INFO L264 CegarLoopResult]: At program point L354-1(line 354) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= 1 ~p_dw_i~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 0 ~p_dw_st~0) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,833 INFO L264 CegarLoopResult]: At program point mainENTRY(lines 349 360) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= |old(~c_dr_i~0)| ~c_dr_i~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|))) [2020-07-10 20:37:18,833 INFO L271 CegarLoopResult]: At program point mainFINAL(lines 349 360) the Hoare annotation is: true [2020-07-10 20:37:18,833 INFO L271 CegarLoopResult]: At program point mainEXIT(lines 349 360) the Hoare annotation is: true [2020-07-10 20:37:18,833 INFO L271 CegarLoopResult]: At program point L358(line 358) the Hoare annotation is: true [2020-07-10 20:37:18,833 INFO L271 CegarLoopResult]: At program point L355(line 355) the Hoare annotation is: true [2020-07-10 20:37:18,834 INFO L264 CegarLoopResult]: At program point L354(line 354) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= |old(~c_dr_i~0)| ~c_dr_i~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|))) [2020-07-10 20:37:18,834 INFO L264 CegarLoopResult]: At program point L128(lines 91 133) the Hoare annotation is: (let ((.cse10 (= 1 ~p_dw_pc~0)) (.cse11 (<= 2 ~p_dw_st~0))) (let ((.cse0 (and (<= 2 ~c_dr_st~0) .cse10 .cse11)) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse3 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse4 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse5 (not (= 1 ~p_dw_i~0))) (.cse7 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse8 (not (<= |old(~p_num_write~0)| 0))) (.cse2 (and (= 0 ~q_free~0) (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)) .cse10 (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0) .cse11)) (.cse9 (not (<= 0 |old(~p_num_write~0)|)))) (and (or .cse0 .cse1 (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse2 (not (= 1 |old(~p_dw_pc~0)|)) .cse3 .cse4 .cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse6 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (or .cse0 .cse3 .cse1 .cse4 .cse5 .cse7 .cse6 .cse8 .cse2 .cse9) (or (not (<= ~c_dr_pc~0 0)) .cse3 .cse1 .cse4 .cse5 .cse7 .cse8 .cse2 .cse9)))) [2020-07-10 20:37:18,834 INFO L264 CegarLoopResult]: At program point do_write_pENTRY(lines 91 133) the Hoare annotation is: (let ((.cse9 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse10 (<= ~c_num_read~0 ~p_num_write~0)) (.cse11 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse12 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse14 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse16 (= 1 ~q_free~0)) (.cse15 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse5 (and .cse9 .cse10 .cse11 .cse12 .cse13 (<= ~p_num_write~0 0) .cse14 .cse16 .cse15)) (.cse7 (not (<= |old(~p_num_write~0)| 0))) (.cse8 (not (<= 0 |old(~p_num_write~0)|))) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or (and .cse9 (<= ~p_num_write~0 ~c_num_read~0) .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16) (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse6 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))))) [2020-07-10 20:37:18,834 INFO L264 CegarLoopResult]: At program point L124(line 124) the Hoare annotation is: (let ((.cse5 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse9 (= 1 ~p_dw_pc~0)) (.cse6 (= 0 ~q_free~0)) (.cse7 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse8 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse10 (<= ~p_num_write~0 (+ ~c_num_read~0 1))) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))) (let ((.cse4 (not (<= 2 |old(~c_dr_st~0)|))) (.cse13 (and .cse5 (not .cse9) .cse6 .cse7 .cse8 .cse10 .cse11 .cse12)) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse14 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse15 (not (<= |old(~p_num_write~0)| 0))) (.cse16 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse4 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)) (and .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12)) (or .cse13 .cse0 .cse1 .cse2 .cse3 .cse14 .cse4 .cse15 .cse16) (or .cse13 (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse14 .cse15 .cse16)))) [2020-07-10 20:37:18,835 INFO L264 CegarLoopResult]: At program point L124-1(line 124) the Hoare annotation is: (let ((.cse15 (= 1 ~p_dw_pc~0)) (.cse16 (= 1 ~p_dw_i~0)) (.cse9 (+ |old(~p_num_write~0)| 1)) (.cse10 (+ ~c_num_read~0 1))) (let ((.cse20 (<= ~p_num_write~0 .cse10)) (.cse21 (<= .cse9 ~p_num_write~0)) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse13 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse17 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse3 (not .cse16)) (.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse18 (not (<= 2 |old(~c_dr_st~0)|))) (.cse11 (not (<= |old(~p_num_write~0)| 0))) (.cse5 (not .cse15)) (.cse6 (= 0 ~q_free~0)) (.cse14 (<= 2 ~c_dr_st~0)) (.cse7 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse19 (<= ~p_dw_st~0 0)) (.cse8 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse12 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 (and .cse5 .cse6 .cse7 .cse8 (<= ~p_num_write~0 .cse9) (<= .cse10 ~p_num_write~0)) .cse11 .cse12) (or (and .cse13 .cse6 .cse14 .cse7 .cse8 .cse15 .cse16 .cse17) .cse1 (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse18 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (and .cse6 .cse14 .cse7 .cse19 .cse8 .cse15 .cse16) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)) (and .cse6 .cse7 .cse8 .cse20 .cse15 .cse21)) (or (and .cse5 .cse6 .cse7 .cse8 .cse20 .cse21) .cse0 .cse1 .cse2 (and .cse13 .cse5 .cse6 .cse7 .cse8 .cse17) .cse3 .cse4 .cse18 .cse11 (and .cse5 .cse6 .cse14 .cse7 .cse19 .cse8) .cse12)))) [2020-07-10 20:37:18,835 INFO L264 CegarLoopResult]: At program point L122(line 122) the Hoare annotation is: (let ((.cse8 (= 1 ~p_dw_pc~0)) (.cse5 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse6 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse7 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse9 (<= ~p_num_write~0 (+ ~c_num_read~0 1))) (.cse10 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse11 (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))) (let ((.cse12 (and (not .cse8) .cse5 .cse6 .cse7 .cse9 .cse10 .cse11)) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse13 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse4 (not (<= 2 |old(~c_dr_st~0)|))) (.cse14 (not (<= |old(~p_num_write~0)| 0))) (.cse15 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse4 (and .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11) (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (or (not (<= ~c_dr_pc~0 0)) .cse12 .cse0 .cse1 .cse2 .cse3 .cse13 .cse14 .cse15) (or .cse12 .cse0 .cse1 .cse2 .cse3 .cse13 .cse4 .cse14 .cse15)))) [2020-07-10 20:37:18,835 INFO L264 CegarLoopResult]: At program point L120(line 120) the Hoare annotation is: (let ((.cse9 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse10 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse11 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse12 (= |old(~q_free~0)| ~q_free~0)) (.cse13 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse5 (and .cse9 (<= ~c_num_read~0 ~p_num_write~0) .cse10 (<= ~p_num_write~0 0) .cse11 .cse12 .cse13)) (.cse7 (not (<= |old(~p_num_write~0)| 0))) (.cse8 (not (<= 0 |old(~p_num_write~0)|))) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or (and .cse9 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse10 .cse11 .cse12 .cse13) (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse6 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))))) [2020-07-10 20:37:18,836 INFO L264 CegarLoopResult]: At program point L110(line 110) the Hoare annotation is: (let ((.cse20 (= 1 ~p_dw_i~0)) (.cse17 (+ |old(~p_num_write~0)| 1)) (.cse18 (+ ~c_num_read~0 1))) (let ((.cse13 (not (<= |old(~p_num_write~0)| 0))) (.cse16 (not (<= 0 |old(~p_num_write~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse7 (= 0 ~q_free~0)) (.cse8 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse9 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse10 (<= ~p_num_write~0 .cse18)) (.cse11 (<= .cse17 ~p_num_write~0)) (.cse15 (<= ~p_dw_st~0 0)) (.cse5 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse14 (<= 2 ~c_dr_st~0)) (.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse6 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not .cse20)) (.cse12 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 (and .cse5 .cse6) (and .cse7 .cse8 .cse9 .cse10 .cse11) .cse12 .cse13 (and .cse14 .cse15) .cse16) (or (and .cse7 .cse8 .cse9 (<= ~p_num_write~0 .cse17) (<= .cse18 ~p_num_write~0)) (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse13 .cse16) (let ((.cse19 (= 1 ~p_dw_pc~0))) (or .cse1 (and .cse7 .cse8 .cse9 .cse19 .cse10 .cse11) (and .cse14 .cse15 .cse20 .cse4 .cse19) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) (and .cse5 .cse14 .cse20 .cse4 .cse19 .cse6) (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse12 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))))))) [2020-07-10 20:37:18,836 INFO L264 CegarLoopResult]: At program point L108(lines 107 127) the Hoare annotation is: (let ((.cse5 (= 1 ~p_dw_pc~0)) (.cse6 (= 1 ~p_dw_i~0)) (.cse27 (+ |old(~p_num_write~0)| 1)) (.cse28 (+ ~c_num_read~0 1))) (let ((.cse14 (<= ~p_num_write~0 .cse28)) (.cse15 (<= .cse27 ~p_num_write~0)) (.cse12 (not (<= 2 |old(~c_dr_st~0)|))) (.cse2 (<= 2 ~c_dr_st~0)) (.cse13 (<= ~p_dw_st~0 0)) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse0 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse18 (<= ~c_num_read~0 ~p_num_write~0)) (.cse19 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse20 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse7 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse21 (<= ~p_num_write~0 0)) (.cse22 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse23 (= |old(~q_free~0)| ~q_free~0)) (.cse24 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse8 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse10 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse11 (not .cse6)) (.cse17 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse16 (not .cse5)) (.cse1 (= 0 ~q_free~0)) (.cse3 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse4 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse25 (not (<= |old(~p_num_write~0)| 0))) (.cse26 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) .cse8 (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) (not (= 1 |old(~p_dw_pc~0)|)) .cse9 .cse10 .cse11 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse12 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (and .cse1 .cse2 .cse3 .cse13 .cse4 .cse5 .cse6) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)) (and .cse1 .cse3 .cse4 .cse14 .cse5 .cse15)) (or (and .cse16 .cse1 .cse3 .cse4 .cse14 .cse15) .cse9 .cse8 .cse10 .cse11 (and .cse0 .cse16 .cse1 .cse3 .cse4 .cse7) .cse17 (and .cse18 .cse0 .cse19 .cse20 .cse7 .cse21 .cse22 .cse23 .cse24) .cse12 .cse25 (and .cse16 .cse1 .cse2 .cse3 .cse13 .cse4) .cse26) (or (not (<= ~c_dr_pc~0 0)) .cse9 (and .cse0 .cse18 .cse19 .cse20 .cse7 .cse21 .cse22 .cse23 .cse24) .cse8 .cse10 .cse11 .cse17 (and .cse16 .cse1 .cse3 .cse4 (<= ~p_num_write~0 .cse27) (<= .cse28 ~p_num_write~0)) .cse25 .cse26)))) [2020-07-10 20:37:18,837 INFO L264 CegarLoopResult]: At program point L123(line 123) the Hoare annotation is: (let ((.cse5 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse9 (= 1 ~p_dw_pc~0)) (.cse6 (= 0 ~q_free~0)) (.cse7 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse8 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse10 (<= ~p_num_write~0 (+ ~c_num_read~0 1))) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0))) (let ((.cse4 (not (<= 2 |old(~c_dr_st~0)|))) (.cse13 (and .cse5 (not .cse9) .cse6 .cse7 .cse8 .cse10 .cse11 .cse12)) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse14 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse15 (not (<= |old(~p_num_write~0)| 0))) (.cse16 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse4 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)) (and .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12)) (or .cse13 .cse0 .cse1 .cse2 .cse3 .cse14 .cse4 .cse15 .cse16) (or .cse13 (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse14 .cse15 .cse16)))) [2020-07-10 20:37:18,837 INFO L264 CegarLoopResult]: At program point do_write_pEXIT(lines 91 133) the Hoare annotation is: (let ((.cse10 (= 1 ~p_dw_pc~0)) (.cse11 (<= 2 ~p_dw_st~0))) (let ((.cse0 (and (<= 2 ~c_dr_st~0) .cse10 .cse11)) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse3 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse4 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse5 (not (= 1 ~p_dw_i~0))) (.cse7 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse8 (not (<= |old(~p_num_write~0)| 0))) (.cse2 (and (= 0 ~q_free~0) (<= ~q_buf_0~0 ~p_last_write~0) (<= ~p_last_write~0 ~q_buf_0~0) (<= ~p_num_write~0 (+ ~c_num_read~0 1)) .cse10 (<= (+ |old(~p_num_write~0)| 1) ~p_num_write~0) .cse11)) (.cse9 (not (<= 0 |old(~p_num_write~0)|)))) (and (or .cse0 .cse1 (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse2 (not (= 1 |old(~p_dw_pc~0)|)) .cse3 .cse4 .cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse6 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (or .cse0 .cse3 .cse1 .cse4 .cse5 .cse7 .cse6 .cse8 .cse2 .cse9) (or (not (<= ~c_dr_pc~0 0)) .cse3 .cse1 .cse4 .cse5 .cse7 .cse8 .cse2 .cse9)))) [2020-07-10 20:37:18,838 INFO L264 CegarLoopResult]: At program point L121(line 121) the Hoare annotation is: (let ((.cse8 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse9 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse10 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse13 (= |old(~q_free~0)| ~q_free~0)) (.cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (and .cse8 (<= ~c_num_read~0 ~p_num_write~0) .cse9 .cse10 .cse11 (<= ~p_num_write~0 0) .cse12 .cse13 .cse14)) (.cse4 (not (= 1 ~p_dw_i~0))) (.cse5 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse15 (not (<= 2 |old(~c_dr_st~0)|))) (.cse6 (not (<= |old(~p_num_write~0)| 0))) (.cse7 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) (or (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 (and .cse8 .cse9 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse10 .cse11 .cse12 .cse13 .cse14) .cse4 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse15 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse15 .cse6 .cse7)))) [2020-07-10 20:37:18,838 INFO L264 CegarLoopResult]: At program point L119(line 119) the Hoare annotation is: (let ((.cse9 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse10 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (= |old(~q_free~0)| ~q_free~0)) (.cse13 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse1 (and .cse9 (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) .cse10 .cse11 (<= ~p_num_write~0 0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse12 .cse13)) (.cse5 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse6 (not (<= |old(~p_num_write~0)| 0))) (.cse7 (not (<= 0 |old(~p_num_write~0)|))) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse2 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse3 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse4 (not (= 1 ~p_dw_i~0))) (.cse8 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse8 .cse6 .cse7) (or (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse2 .cse3 .cse4 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (and .cse9 (<= ~q_buf_0~0 ~p_last_write~0) .cse10 (= ~p_num_write~0 |old(~p_num_write~0)|) (<= ~p_last_write~0 ~q_buf_0~0) (= 1 ~p_dw_pc~0) .cse11 .cse12 .cse13) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse8 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))))) [2020-07-10 20:37:18,838 INFO L264 CegarLoopResult]: At program point L119-1(line 119) the Hoare annotation is: (let ((.cse9 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse10 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse11 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse12 (= |old(~q_free~0)| ~q_free~0)) (.cse13 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse5 (and .cse9 (<= ~c_num_read~0 ~p_num_write~0) .cse10 (<= ~p_num_write~0 0) .cse11 .cse12 .cse13)) (.cse7 (not (<= |old(~p_num_write~0)| 0))) (.cse8 (not (<= 0 |old(~p_num_write~0)|))) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or (and .cse9 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse10 .cse11 .cse12 .cse13) (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse6 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))))) [2020-07-10 20:37:18,839 INFO L264 CegarLoopResult]: At program point L111(line 111) the Hoare annotation is: (let ((.cse16 (+ |old(~p_num_write~0)| 1)) (.cse17 (+ ~c_num_read~0 1))) (let ((.cse4 (= 0 ~q_free~0)) (.cse5 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse6 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse7 (<= ~p_num_write~0 .cse17)) (.cse8 (<= .cse16 ~p_num_write~0)) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse3 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse10 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse11 (not (= 1 ~p_dw_i~0))) (.cse13 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse12 (not (<= 2 |old(~c_dr_st~0)|))) (.cse14 (not (<= |old(~p_num_write~0)| 0))) (.cse15 (not (<= 0 |old(~p_num_write~0)|)))) (and (let ((.cse1 (= 1 ~p_dw_pc~0))) (or (and .cse0 .cse1 .cse2) .cse3 (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) (and .cse4 .cse5 .cse6 .cse7 .cse1 .cse8 .cse2) (not (= 1 |old(~p_dw_pc~0)|)) .cse9 .cse10 .cse11 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse12 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (or (not (<= ~c_dr_pc~0 0)) .cse9 .cse3 .cse10 .cse11 .cse13 .cse14 .cse15 (and .cse4 .cse5 .cse6 (<= ~p_num_write~0 .cse16) (<= .cse17 ~p_num_write~0) .cse2)) (or (and .cse4 .cse5 .cse6 .cse7 .cse8 .cse2) .cse9 .cse3 .cse10 .cse11 .cse13 (and .cse0 .cse2) .cse12 .cse14 .cse15)))) [2020-07-10 20:37:18,839 INFO L264 CegarLoopResult]: At program point L109(lines 95 132) the Hoare annotation is: (let ((.cse9 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse10 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (= |old(~q_free~0)| ~q_free~0)) (.cse13 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse1 (and .cse9 (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) .cse10 .cse11 (<= ~p_num_write~0 0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse12 .cse13)) (.cse5 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse6 (not (<= |old(~p_num_write~0)| 0))) (.cse7 (not (<= 0 |old(~p_num_write~0)|))) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse2 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse3 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse4 (not (= 1 ~p_dw_i~0))) (.cse8 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse8 .cse6 .cse7) (or (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse2 .cse3 .cse4 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (and .cse9 (<= ~q_buf_0~0 ~p_last_write~0) .cse10 (= ~p_num_write~0 |old(~p_num_write~0)|) (<= ~p_last_write~0 ~q_buf_0~0) (= 1 ~p_dw_pc~0) .cse11 .cse12 .cse13) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse8 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))))) [2020-07-10 20:37:18,839 INFO L264 CegarLoopResult]: At program point L107-1(lines 95 132) the Hoare annotation is: (let ((.cse5 (= 1 ~p_dw_pc~0)) (.cse6 (= 1 ~p_dw_i~0)) (.cse27 (+ |old(~p_num_write~0)| 1)) (.cse28 (+ ~c_num_read~0 1))) (let ((.cse14 (<= ~p_num_write~0 .cse28)) (.cse15 (<= .cse27 ~p_num_write~0)) (.cse12 (not (<= 2 |old(~c_dr_st~0)|))) (.cse2 (<= 2 ~c_dr_st~0)) (.cse13 (<= ~p_dw_st~0 0)) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse0 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse18 (<= ~c_num_read~0 ~p_num_write~0)) (.cse19 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse20 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse7 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse21 (<= ~p_num_write~0 0)) (.cse22 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse23 (= |old(~q_free~0)| ~q_free~0)) (.cse24 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse8 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse10 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse11 (not .cse6)) (.cse17 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse16 (not .cse5)) (.cse1 (= 0 ~q_free~0)) (.cse3 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse4 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse25 (not (<= |old(~p_num_write~0)| 0))) (.cse26 (not (<= 0 |old(~p_num_write~0)|)))) (and (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) .cse8 (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) (not (= 1 |old(~p_dw_pc~0)|)) .cse9 .cse10 .cse11 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) .cse12 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (and .cse1 .cse2 .cse3 .cse13 .cse4 .cse5 .cse6) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)) (and .cse1 .cse3 .cse4 .cse14 .cse5 .cse15)) (or (and .cse16 .cse1 .cse3 .cse4 .cse14 .cse15) .cse9 .cse8 .cse10 .cse11 (and .cse0 .cse16 .cse1 .cse3 .cse4 .cse7) .cse17 (and .cse18 .cse0 .cse19 .cse20 .cse7 .cse21 .cse22 .cse23 .cse24) .cse12 .cse25 (and .cse16 .cse1 .cse2 .cse3 .cse13 .cse4) .cse26) (or (not (<= ~c_dr_pc~0 0)) .cse9 (and .cse0 .cse18 .cse19 .cse20 .cse7 .cse21 .cse22 .cse23 .cse24) .cse8 .cse10 .cse11 .cse17 (and .cse16 .cse1 .cse3 .cse4 (<= ~p_num_write~0 .cse27) (<= .cse28 ~p_num_write~0)) .cse25 .cse26)))) [2020-07-10 20:37:18,840 INFO L264 CegarLoopResult]: At program point L99(lines 99 103) the Hoare annotation is: (let ((.cse9 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse10 (<= ~c_num_read~0 ~p_num_write~0)) (.cse11 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse12 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse14 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse16 (= 1 ~q_free~0)) (.cse15 (= ~q_write_ev~0 |old(~q_write_ev~0)|))) (let ((.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse5 (and .cse9 .cse10 .cse11 .cse12 .cse13 (<= ~p_num_write~0 0) .cse14 .cse16 .cse15)) (.cse7 (not (<= |old(~p_num_write~0)| 0))) (.cse8 (not (<= 0 |old(~p_num_write~0)|))) (.cse0 (not (= 1 |old(~q_free~0)|))) (.cse1 (not (<= |old(~p_num_write~0)| ~c_num_read~0))) (.cse2 (not (<= ~c_num_read~0 |old(~p_num_write~0)|))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse8) (or (and .cse9 (<= ~p_num_write~0 ~c_num_read~0) .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16) (not (= 1 |old(~p_dw_pc~0)|)) .cse0 .cse1 .cse2 .cse3 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|)) (= 1 ~q_read_ev~0) (not (< ~c_last_read~0 (+ |old(~p_last_write~0)| 1))) .cse6 (not (<= |old(~p_last_write~0)| ~c_last_read~0)) (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))))) [2020-07-10 20:37:18,840 INFO L271 CegarLoopResult]: At program point errorEXIT(lines 5 12) the Hoare annotation is: true [2020-07-10 20:37:18,840 INFO L271 CegarLoopResult]: At program point errorErr0ASSERT_VIOLATIONERROR_FUNCTION(line 9) the Hoare annotation is: true [2020-07-10 20:37:18,840 INFO L271 CegarLoopResult]: At program point errorENTRY(lines 5 12) the Hoare annotation is: true [2020-07-10 20:37:18,840 INFO L271 CegarLoopResult]: At program point errorFINAL(lines 5 12) the Hoare annotation is: true [2020-07-10 20:37:18,840 INFO L264 CegarLoopResult]: At program point immediate_notify_threadsENTRY(lines 66 90) the Hoare annotation is: (let ((.cse10 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse10))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse10 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse5 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,840 INFO L264 CegarLoopResult]: At program point L83(line 83) the Hoare annotation is: (let ((.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~p_dw_i~0)) (.cse10 (= 1 ~p_dw_pc~0))) (let ((.cse12 (not .cse10)) (.cse0 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) .cse14 (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (and .cse14 .cse13)) (.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (not (<= ~p_num_write~0 .cse15))) (.cse7 (not (<= 2 |old(~c_dr_st~0)|))) (.cse8 (not (= 0 ~q_free~0))) (.cse11 (and .cse12 (or .cse0 .cse6))) (.cse9 (not (<= .cse15 ~p_num_write~0))) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse4 (not .cse14)) (.cse5 (= 1 ~q_read_ev~0))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9) (or (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse3 .cse4 .cse10 .cse11 .cse8 .cse9) (or .cse1 .cse2 .cse3 .cse4 .cse10 .cse7 .cse8 .cse11 .cse9) (or .cse12 (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (not (<= 2 |old(~p_dw_st~0)|)) .cse4 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse13 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse5)))))) [2020-07-10 20:37:18,841 INFO L264 CegarLoopResult]: At program point L82(lines 82 86) the Hoare annotation is: (let ((.cse12 (= 0 ~p_dw_st~0)) (.cse13 (= 1 ~p_dw_i~0))) (let ((.cse0 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) .cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (and .cse13 .cse12)) (.cse14 (+ ~c_num_read~0 1))) (let ((.cse3 (not (<= ~p_num_write~0 .cse14))) (.cse9 (and (<= 2 ~c_dr_st~0) (or .cse0 .cse6))) (.cse10 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse14 ~p_num_write~0))) (.cse5 (= 1 ~p_dw_pc~0)) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse4 (not .cse13)) (.cse11 (= 1 ~q_read_ev~0))) (and (or .cse0 (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse5 .cse9 .cse10 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse11 .cse9 .cse10 .cse7 .cse8) (or (not .cse5) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (not (<= 2 |old(~p_dw_st~0)|)) .cse4 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse12 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse11)))))) [2020-07-10 20:37:18,841 INFO L264 CegarLoopResult]: At program point L80(line 80) the Hoare annotation is: (let ((.cse12 (= 0 ~p_dw_st~0)) (.cse13 (= 1 ~p_dw_i~0))) (let ((.cse0 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) .cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (and .cse13 .cse12)) (.cse14 (+ ~c_num_read~0 1))) (let ((.cse3 (not (<= ~p_num_write~0 .cse14))) (.cse9 (and (<= 2 ~c_dr_st~0) (or .cse0 .cse6))) (.cse10 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse14 ~p_num_write~0))) (.cse5 (= 1 ~p_dw_pc~0)) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse4 (not .cse13)) (.cse11 (= 1 ~q_read_ev~0))) (and (or .cse0 (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse5 .cse9 .cse10 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse11 .cse9 .cse10 .cse7 .cse8) (or (not .cse5) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (not (<= 2 |old(~p_dw_st~0)|)) .cse4 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse12 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse11)))))) [2020-07-10 20:37:18,841 INFO L264 CegarLoopResult]: At program point L82-2(lines 66 90) the Hoare annotation is: (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= 2 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= 0 ~p_dw_st~0) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,841 INFO L264 CegarLoopResult]: At program point L80-1(line 80) the Hoare annotation is: (let ((.cse12 (= 0 ~p_dw_st~0)) (.cse13 (= 1 ~p_dw_i~0))) (let ((.cse0 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) .cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (and .cse13 .cse12)) (.cse14 (+ ~c_num_read~0 1))) (let ((.cse3 (not (<= ~p_num_write~0 .cse14))) (.cse9 (and (<= 2 ~c_dr_st~0) (or .cse0 .cse6))) (.cse10 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse14 ~p_num_write~0))) (.cse5 (= 1 ~p_dw_pc~0)) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse4 (not .cse13)) (.cse11 (= 1 ~q_read_ev~0))) (and (or .cse0 (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse5 .cse9 .cse10 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse11 .cse9 .cse10 .cse7 .cse8) (or (not .cse5) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (not (<= 2 |old(~p_dw_st~0)|)) .cse4 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse12 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse11)))))) [2020-07-10 20:37:18,842 INFO L264 CegarLoopResult]: At program point L80-2(line 80) the Hoare annotation is: (let ((.cse12 (= 0 ~p_dw_st~0)) (.cse13 (= 1 ~p_dw_i~0))) (let ((.cse0 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) .cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (and .cse13 .cse12)) (.cse14 (+ ~c_num_read~0 1))) (let ((.cse3 (not (<= ~p_num_write~0 .cse14))) (.cse9 (and (<= 2 ~c_dr_st~0) (or .cse0 .cse6))) (.cse10 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse14 ~p_num_write~0))) (.cse5 (= 1 ~p_dw_pc~0)) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse4 (not .cse13)) (.cse11 (= 1 ~q_read_ev~0))) (and (or .cse0 (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse5 .cse9 .cse10 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse11 .cse9 .cse10 .cse7 .cse8) (or (not .cse5) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (not (<= 2 |old(~p_dw_st~0)|)) .cse4 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse12 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse11)))))) [2020-07-10 20:37:18,842 INFO L264 CegarLoopResult]: At program point L75(line 75) the Hoare annotation is: (let ((.cse10 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse10))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse10 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse5 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,842 INFO L264 CegarLoopResult]: At program point L74(lines 74 78) the Hoare annotation is: (let ((.cse3 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse4 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (+ ~c_num_read~0 1))) (let ((.cse6 (= 1 ~q_read_ev~0)) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse7 (not (<= ~p_num_write~0 .cse12))) (.cse5 (not (= 1 ~p_dw_i~0))) (.cse0 (= 1 ~p_dw_pc~0)) (.cse8 (and .cse3 .cse4)) (.cse9 (not (<= 2 |old(~c_dr_st~0)|))) (.cse10 (not (= 0 ~q_free~0))) (.cse11 (not (<= .cse12 ~p_num_write~0)))) (and (or (not .cse0) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (and .cse3 (<= 1 immediate_notify_threads_~tmp~0) .cse4) (not (<= 2 |old(~p_dw_st~0)|)) .cse5 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse6)) (or .cse1 .cse2 .cse7 .cse5 .cse6 .cse8 .cse9 .cse10 .cse11) (or (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse7 .cse5 .cse0 .cse8 .cse10 .cse11) (or .cse1 .cse2 .cse7 .cse5 .cse0 .cse8 .cse9 .cse10 .cse11)))) [2020-07-10 20:37:18,842 INFO L264 CegarLoopResult]: At program point immediate_notify_threadsEXIT(lines 66 90) the Hoare annotation is: (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= 2 |old(~p_dw_st~0)|)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (= 0 ~p_dw_st~0) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,842 INFO L264 CegarLoopResult]: At program point L72(line 72) the Hoare annotation is: (let ((.cse10 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse10))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse10 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse5 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,843 INFO L264 CegarLoopResult]: At program point L74-2(lines 74 78) the Hoare annotation is: (let ((.cse11 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~p_dw_i~0))) (let ((.cse0 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) .cse14 (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (and .cse14 .cse11)) (.cse13 (+ ~c_num_read~0 1))) (let ((.cse5 (= 1 ~p_dw_pc~0)) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (<= ~p_num_write~0 .cse13))) (.cse4 (not .cse14)) (.cse12 (= 1 ~q_read_ev~0)) (.cse9 (and (<= 2 ~c_dr_st~0) (or .cse0 .cse6))) (.cse10 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse13 ~p_num_write~0)))) (and (or .cse0 (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or .cse1 .cse2 .cse3 .cse4 .cse5 .cse9 .cse10 .cse7 .cse8) (or (not .cse5) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse1 .cse2 (not (<= 2 |old(~p_dw_st~0)|)) .cse4 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse11 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse12)) (or .cse1 .cse2 .cse3 .cse4 .cse12 .cse9 .cse10 .cse7 .cse8))))) [2020-07-10 20:37:18,843 INFO L264 CegarLoopResult]: At program point L72-1(line 72) the Hoare annotation is: (let ((.cse10 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse12))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and .cse10 .cse11)) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse12 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (and .cse10 (<= 1 |immediate_notify_threads_#t~ret0|) .cse11) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,843 INFO L264 CegarLoopResult]: At program point L72-2(line 72) the Hoare annotation is: (let ((.cse10 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse12))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and .cse10 .cse11)) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse12 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (and .cse10 (<= 1 |immediate_notify_threads_#t~ret0|) .cse11) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,844 INFO L264 CegarLoopResult]: At program point L72-3(line 72) the Hoare annotation is: (let ((.cse10 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse11 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse12 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse12))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and .cse10 .cse11)) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse12 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (and .cse10 (<= 1 immediate_notify_threads_~tmp~0) (<= 1 |immediate_notify_threads_#t~ret0|) .cse11) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,844 INFO L264 CegarLoopResult]: At program point L68(line 68) the Hoare annotation is: (let ((.cse10 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~q_read_ev~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse10))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse9 (= 1 ~p_dw_pc~0)) (.cse5 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))) (.cse6 (not (<= 2 |old(~c_dr_st~0)|))) (.cse7 (not (= 0 ~q_free~0))) (.cse8 (not (<= .cse10 ~p_num_write~0)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (or (not .cse9) (not (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 (not (<= 2 |old(~p_dw_st~0)|)) .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) .cse5 (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not .cse4)) (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse7 .cse8) (or .cse0 .cse1 .cse2 .cse3 .cse9 .cse5 .cse6 .cse7 .cse8)))) [2020-07-10 20:37:18,844 INFO L264 CegarLoopResult]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L27(line 27) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L26(line 26) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L25(line 25) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L24(line 24) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L23(line 23) the Hoare annotation is: (and (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L22(line 22) the Hoare annotation is: (and (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (= 0 ~q_free~0) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L21(line 21) the Hoare annotation is: (and (<= 0 ~p_num_write~0) (= 0 ~q_free~0) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L20(line 20) the Hoare annotation is: (and (<= 0 ~p_num_write~0) (= 0 ~q_free~0) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L19(line 19) the Hoare annotation is: (and (<= 0 ~p_num_write~0) (= 0 ~q_free~0) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~p_num_write~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,845 INFO L264 CegarLoopResult]: At program point L18(line 18) the Hoare annotation is: (and (= 0 ~q_free~0) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,846 INFO L264 CegarLoopResult]: At program point L17(line 17) the Hoare annotation is: (and (= 0 ~q_free~0) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,846 INFO L264 CegarLoopResult]: At program point L16(line 16) the Hoare annotation is: (and (= 0 ~q_free~0) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|)) [2020-07-10 20:37:18,846 INFO L264 CegarLoopResult]: At program point L15(line 15) the Hoare annotation is: (and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|)) [2020-07-10 20:37:18,846 INFO L264 CegarLoopResult]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= ~c_num_read~0 |old(~c_num_read~0)|) (= ~p_dw_st~0 |old(~p_dw_st~0)|) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= ~p_num_write~0 |old(~p_num_write~0)|) (= ~p_dw_pc~0 |old(~p_dw_pc~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~q_read_ev~0 |old(~q_read_ev~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~q_free~0 |old(~q_free~0)|) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= ~c_dr_i~0 |old(~c_dr_i~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|)) [2020-07-10 20:37:18,846 INFO L264 CegarLoopResult]: At program point L134(line 134) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,847 INFO L264 CegarLoopResult]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,847 INFO L264 CegarLoopResult]: At program point L254(line 254) the Hoare annotation is: (let ((.cse1 (<= ~c_num_read~0 ~p_num_write~0)) (.cse2 (<= ~p_num_write~0 ~c_num_read~0)) (.cse3 (<= 2 ~c_dr_st~0)) (.cse24 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse25 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse26 (= 1 ~p_dw_pc~0)) (.cse30 (= 1 ~p_dw_i~0)) (.cse27 (not (= 1 ~q_read_ev~0))) (.cse23 (= 1 ~q_free~0)) (.cse28 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse29 (<= ~p_last_write~0 ~c_last_read~0))) (let ((.cse19 (not (<= 2 |old(~p_dw_st~0)|))) (.cse5 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse6 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse7 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse8 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse4 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse12 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse14 (not (<= |old(~p_num_write~0)| 0))) (.cse15 (and .cse1 .cse2 .cse3 .cse24 .cse25 .cse26 .cse30 .cse27 .cse23 .cse28 .cse29)) (.cse16 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (not (= 0 |old(~p_dw_st~0)|))) (.cse0 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse18 (not (= 1 |old(~p_dw_pc~0)|))) (.cse10 (not (= 1 |old(~q_free~0)|))) (.cse11 (not .cse30)) (.cse21 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse13 (not (<= 2 |old(~c_dr_st~0)|))) (.cse22 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse17 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 (= |old(~q_free~0)| ~q_free~0) .cse8) .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse17) (let ((.cse20 (+ |old(~c_num_read~0)| 1))) (or .cse18 .cse19 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse20)) .cse11 .cse21 (not (<= .cse20 |old(~p_num_write~0)|)) .cse15 .cse22)) (or .cse18 .cse19 .cse11 .cse13) (or .cse0 .cse9 .cse10 (and .cse2 .cse1 .cse4 .cse5 .cse6 .cse7 .cse23 .cse8) (and .cse1 .cse2 .cse3 .cse4 (not (= ~p_dw_pc~0 ~q_free~0)) .cse23) .cse11 .cse12 (not (<= |old(~c_dr_pc~0)| 0)) .cse14 .cse15 .cse16 .cse17) (or .cse9 (and .cse1 .cse2 .cse3 .cse24 .cse25 .cse26 .cse27 .cse23 .cse28 .cse29) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse0 .cse18 .cse10 .cse11 (= |old(~q_read_ev~0)| 1) .cse21 .cse13 .cse22 .cse17)))) [2020-07-10 20:37:18,848 INFO L264 CegarLoopResult]: At program point L242(lines 242 246) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,848 INFO L264 CegarLoopResult]: At program point L242-1(lines 237 277) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,849 INFO L264 CegarLoopResult]: At program point L238(line 238) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,849 INFO L264 CegarLoopResult]: At program point evalEXIT(lines 230 283) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,849 INFO L264 CegarLoopResult]: At program point L251(lines 251 258) the Hoare annotation is: (let ((.cse17 (<= ~p_num_write~0 ~c_num_read~0)) (.cse16 (<= ~c_num_read~0 ~p_num_write~0)) (.cse18 (<= 2 ~c_dr_st~0)) (.cse21 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse22 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse23 (= 1 ~p_dw_pc~0)) (.cse27 (= 1 ~p_dw_i~0)) (.cse19 (= 0 ~p_dw_st~0)) (.cse24 (not (= 1 ~q_read_ev~0))) (.cse20 (= 1 ~q_free~0)) (.cse25 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse26 (<= ~p_last_write~0 ~c_last_read~0))) (let ((.cse0 (and .cse17 .cse16 .cse18 .cse21 .cse22 .cse23 .cse27 .cse19 .cse24 .cse20 .cse25 .cse26)) (.cse10 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse13 (not (<= |old(~p_num_write~0)| 0))) (.cse12 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_num_read~0 |old(~c_num_read~0)|) .cse17 (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) .cse16 (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) .cse20)) (.cse14 (not (<= 0 |old(~p_num_write~0)|))) (.cse2 (not (<= 2 |old(~p_dw_st~0)|))) (.cse8 (not (= 0 |old(~p_dw_st~0)|))) (.cse7 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse1 (not (= 1 |old(~p_dw_pc~0)|))) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse4 (not .cse27)) (.cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse6 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse15 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (let ((.cse3 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 .cse2 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse3)) .cse4 .cse5 (not (<= .cse3 |old(~p_num_write~0)|)) .cse6)) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 (not (<= |old(~c_dr_pc~0)| 0)) (and .cse16 .cse17 .cse18 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse19 (not (= ~p_dw_pc~0 ~q_free~0)) .cse20) .cse13 .cse12 .cse14 .cse15) (or .cse1 .cse2 .cse4 .cse11) (or .cse8 (and .cse16 .cse17 .cse18 .cse21 .cse22 .cse23 .cse19 .cse24 .cse20 .cse25 .cse26) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse7 .cse1 .cse9 .cse4 (= |old(~q_read_ev~0)| 1) .cse5 .cse11 .cse6 .cse15)))) [2020-07-10 20:37:18,850 INFO L264 CegarLoopResult]: At program point L247(lines 237 277) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,850 INFO L264 CegarLoopResult]: At program point L268(line 268) the Hoare annotation is: (let ((.cse23 (+ ~c_num_read~0 1))) (let ((.cse1 (= 0 ~q_free~0)) (.cse2 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse3 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse4 (<= .cse23 ~p_num_write~0)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse5 (<= ~p_num_write~0 .cse23)) (.cse7 (<= 2 ~p_dw_st~0)) (.cse22 (= 1 ~p_dw_i~0))) (let ((.cse12 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse14 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse9 (not (= 1 |old(~p_dw_pc~0)|))) (.cse20 (not (<= 2 |old(~p_dw_st~0)|))) (.cse8 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse0 (not (= 0 |old(~p_dw_st~0)|))) (.cse10 (not (= 1 |old(~q_free~0)|))) (.cse11 (not .cse22)) (.cse16 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse17 (and .cse1 .cse2 .cse3 .cse4 .cse22 .cse6 .cse5 .cse7)) (.cse13 (not (<= 2 |old(~c_dr_st~0)|))) (.cse18 (not (<= |old(~p_num_write~0)| 0))) (.cse19 (not (<= 0 |old(~p_num_write~0)|))) (.cse15 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 (not (= 1 ~q_read_ev~0)) .cse7) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse8 .cse9 .cse10 .cse11 (= |old(~q_read_ev~0)| 1) .cse12 .cse13 .cse14 .cse15) (or .cse8 .cse0 .cse10 .cse11 .cse16 (not (<= |old(~c_dr_pc~0)| 0)) .cse17 (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= 1 ~q_free~0)) .cse18 .cse19 .cse15) (let ((.cse21 (+ |old(~c_num_read~0)| 1))) (or .cse9 .cse20 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse21)) .cse11 .cse12 (not (<= .cse21 |old(~p_num_write~0)|)) .cse17 .cse14)) (or .cse9 .cse20 .cse11 .cse13) (or .cse8 .cse0 .cse10 .cse11 .cse16 .cse17 .cse13 .cse18 .cse19 .cse15))))) [2020-07-10 20:37:18,851 INFO L264 CegarLoopResult]: At program point L264(line 264) the Hoare annotation is: (let ((.cse37 (+ ~c_num_read~0 1))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse1 (= 0 ~q_free~0)) (.cse2 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse3 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse4 (<= .cse37 ~p_num_write~0)) (.cse5 (<= ~p_num_write~0 .cse37)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse35 (= 1 ~p_dw_i~0)) (.cse8 (<= 2 ~p_dw_st~0))) (let ((.cse14 (not (<= 2 |old(~c_dr_st~0)|))) (.cse9 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse0 (not (= 0 |old(~p_dw_st~0)|))) (.cse11 (not (= 1 |old(~q_free~0)|))) (.cse18 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse23 (not (<= |old(~c_dr_pc~0)| 0))) (.cse19 (not (<= |old(~p_num_write~0)| 0))) (.cse20 (let ((.cse36 (+ |old(~p_num_write~0)| 1))) (and .cse1 .cse2 .cse3 (<= ~p_num_write~0 .cse36) .cse4 .cse5 .cse6 .cse35 (<= .cse36 ~p_num_write~0) .cse8))) (.cse21 (not (<= 0 |old(~p_num_write~0)|))) (.cse16 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse17 (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse35 .cse7 .cse8)) (.cse24 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse25 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse26 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse27 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse28 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse29 (= ~a_t~0 |old(~a_t~0)|)) (.cse30 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse31 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse32 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse33 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse10 (not (= 1 |old(~p_dw_pc~0)|))) (.cse22 (not (<= 2 |old(~p_dw_st~0)|))) (.cse12 (not .cse35)) (.cse13 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse15 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse9 .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| 1) .cse13 .cse14 .cse15 .cse16) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse14 .cse19 .cse20 .cse21 .cse16) (or .cse10 .cse22 .cse12 .cse14) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse23 .cse14 .cse19 (<= ~c_dr_pc~0 0) .cse21 .cse16) (or .cse9 .cse17 .cse0 .cse11 .cse12 .cse18 .cse23 .cse19 (and .cse24 (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) .cse25 .cse26 (<= ~c_num_read~0 ~p_num_write~0) .cse27 .cse28 .cse29 .cse30 .cse31 .cse32 .cse33 (= 1 ~q_free~0)) .cse20 .cse21 .cse16) (let ((.cse34 (+ |old(~c_num_read~0)| 1))) (or .cse17 (and .cse24 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse5 .cse25 .cse26 .cse27 .cse28 .cse4 .cse29 .cse30 .cse31 .cse32 (= |old(~q_free~0)| ~q_free~0) .cse33) .cse10 .cse22 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse34)) .cse12 .cse13 (not (<= .cse34 |old(~p_num_write~0)|)) .cse15)))))) [2020-07-10 20:37:18,851 INFO L264 CegarLoopResult]: At program point L264-1(line 264) the Hoare annotation is: (let ((.cse37 (+ ~c_num_read~0 1))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse1 (= 0 ~q_free~0)) (.cse2 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse3 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse4 (<= .cse37 ~p_num_write~0)) (.cse5 (<= ~p_num_write~0 .cse37)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse35 (= 1 ~p_dw_i~0)) (.cse8 (<= 2 ~p_dw_st~0))) (let ((.cse14 (not (<= 2 |old(~c_dr_st~0)|))) (.cse9 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse0 (not (= 0 |old(~p_dw_st~0)|))) (.cse11 (not (= 1 |old(~q_free~0)|))) (.cse18 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse23 (not (<= |old(~c_dr_pc~0)| 0))) (.cse19 (not (<= |old(~p_num_write~0)| 0))) (.cse20 (let ((.cse36 (+ |old(~p_num_write~0)| 1))) (and .cse1 .cse2 .cse3 (<= ~p_num_write~0 .cse36) .cse4 .cse5 .cse6 .cse35 (<= .cse36 ~p_num_write~0) .cse8))) (.cse21 (not (<= 0 |old(~p_num_write~0)|))) (.cse16 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse17 (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse35 .cse7 .cse8)) (.cse24 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse25 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse26 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse27 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse28 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse29 (= ~a_t~0 |old(~a_t~0)|)) (.cse30 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse31 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse32 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse33 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse10 (not (= 1 |old(~p_dw_pc~0)|))) (.cse22 (not (<= 2 |old(~p_dw_st~0)|))) (.cse12 (not .cse35)) (.cse13 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse15 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse9 .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| 1) .cse13 .cse14 .cse15 .cse16) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse14 .cse19 .cse20 .cse21 .cse16) (or .cse10 .cse22 .cse12 .cse14) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse23 .cse14 .cse19 (<= ~c_dr_pc~0 0) .cse21 .cse16) (or .cse9 .cse17 .cse0 .cse11 .cse12 .cse18 .cse23 .cse19 (and .cse24 (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) .cse25 .cse26 (<= ~c_num_read~0 ~p_num_write~0) .cse27 .cse28 .cse29 .cse30 .cse31 .cse32 .cse33 (= 1 ~q_free~0)) .cse20 .cse21 .cse16) (let ((.cse34 (+ |old(~c_num_read~0)| 1))) (or .cse17 (and .cse24 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse5 .cse25 .cse26 .cse27 .cse28 .cse4 .cse29 .cse30 .cse31 .cse32 (= |old(~q_free~0)| ~q_free~0) .cse33) .cse10 .cse22 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse34)) .cse12 .cse13 (not (<= .cse34 |old(~p_num_write~0)|)) .cse15)))))) [2020-07-10 20:37:18,851 INFO L264 CegarLoopResult]: At program point L264-2(line 264) the Hoare annotation is: (let ((.cse37 (+ ~c_num_read~0 1))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse1 (= 0 ~q_free~0)) (.cse2 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse3 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse4 (<= .cse37 ~p_num_write~0)) (.cse5 (<= ~p_num_write~0 .cse37)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse35 (= 1 ~p_dw_i~0)) (.cse8 (<= 2 ~p_dw_st~0))) (let ((.cse14 (not (<= 2 |old(~c_dr_st~0)|))) (.cse9 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse0 (not (= 0 |old(~p_dw_st~0)|))) (.cse11 (not (= 1 |old(~q_free~0)|))) (.cse18 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse23 (not (<= |old(~c_dr_pc~0)| 0))) (.cse19 (not (<= |old(~p_num_write~0)| 0))) (.cse20 (let ((.cse36 (+ |old(~p_num_write~0)| 1))) (and .cse1 .cse2 .cse3 (<= ~p_num_write~0 .cse36) .cse4 .cse5 .cse6 .cse35 (<= .cse36 ~p_num_write~0) .cse8))) (.cse21 (not (<= 0 |old(~p_num_write~0)|))) (.cse16 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse17 (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse35 .cse7 .cse8)) (.cse24 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse25 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse26 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse27 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse28 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse29 (= ~a_t~0 |old(~a_t~0)|)) (.cse30 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse31 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse32 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse33 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse10 (not (= 1 |old(~p_dw_pc~0)|))) (.cse22 (not (<= 2 |old(~p_dw_st~0)|))) (.cse12 (not .cse35)) (.cse13 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse15 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse9 .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| 1) .cse13 .cse14 .cse15 .cse16) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse14 .cse19 .cse20 .cse21 .cse16) (or .cse10 .cse22 .cse12 .cse14) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse23 .cse14 .cse19 (<= ~c_dr_pc~0 0) .cse21 .cse16) (or .cse9 .cse17 .cse0 .cse11 .cse12 .cse18 .cse23 .cse19 (and .cse24 (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) .cse25 .cse26 (<= ~c_num_read~0 ~p_num_write~0) .cse27 .cse28 .cse29 .cse30 .cse31 .cse32 .cse33 (= 1 ~q_free~0)) .cse20 .cse21 .cse16) (let ((.cse34 (+ |old(~c_num_read~0)| 1))) (or .cse17 (and .cse24 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse5 .cse25 .cse26 .cse27 .cse28 .cse4 .cse29 .cse30 .cse31 .cse32 (= |old(~q_free~0)| ~q_free~0) .cse33) .cse10 .cse22 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse34)) .cse12 .cse13 (not (<= .cse34 |old(~p_num_write~0)|)) .cse15)))))) [2020-07-10 20:37:18,852 INFO L264 CegarLoopResult]: At program point evalENTRY(lines 230 283) the Hoare annotation is: (let ((.cse3 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse25 (<= ~p_num_write~0 ~c_num_read~0)) (.cse7 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse8 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse26 (<= ~c_num_read~0 ~p_num_write~0)) (.cse9 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse10 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse11 (= ~a_t~0 |old(~a_t~0)|)) (.cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse13 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse27 (= 0 ~p_dw_st~0)) (.cse28 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse15 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse29 (= 1 ~q_free~0))) (let ((.cse16 (not (<= 2 |old(~c_dr_st~0)|))) (.cse17 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse18 (not (= 0 |old(~p_dw_st~0)|))) (.cse19 (not (= 1 |old(~q_free~0)|))) (.cse20 (and .cse3 .cse25 .cse7 .cse8 .cse26 .cse9 .cse10 .cse11 .cse12 .cse13 .cse27 .cse28 .cse15 .cse29)) (.cse21 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse22 (not (<= |old(~p_num_write~0)| 0))) (.cse23 (not (<= 0 |old(~p_num_write~0)|))) (.cse24 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse0 (not (= 1 |old(~p_dw_pc~0)|))) (.cse1 (not (<= 2 |old(~p_dw_st~0)|))) (.cse2 (not (= 1 ~p_dw_i~0))) (.cse30 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse4 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse5 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse14 (= |old(~q_free~0)| ~q_free~0)) (.cse31 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 .cse1 .cse2 (and .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) .cse16) (or .cse17 .cse18 .cse19 .cse20 .cse2 .cse21 .cse16 .cse22 .cse23 .cse24) (or .cse18 (and .cse3 .cse25 .cse8 (< ~c_last_read~0 (+ ~p_last_write~0 1)) .cse26 .cse9 .cse10 .cse11 .cse12 .cse13 .cse27 .cse28 .cse15 .cse29 (<= ~p_last_write~0 ~c_last_read~0)) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse17 .cse0 .cse19 .cse2 (= |old(~q_read_ev~0)| 1) .cse30 .cse16 .cse31 .cse24) (or .cse17 .cse18 .cse19 .cse2 .cse20 .cse21 (not (<= |old(~c_dr_pc~0)| 0)) .cse22 .cse23 .cse24) (let ((.cse32 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse32)) .cse2 .cse30 (not (<= .cse32 |old(~p_num_write~0)|)) (let ((.cse33 (+ ~c_num_read~0 1))) (and .cse4 .cse5 (<= ~p_num_write~0 .cse33) .cse6 .cse7 .cse8 .cse9 .cse10 (<= .cse33 ~p_num_write~0) .cse11 .cse12 .cse13 .cse14 .cse15)) .cse31))))) [2020-07-10 20:37:18,852 INFO L264 CegarLoopResult]: At program point L240(line 240) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,853 INFO L264 CegarLoopResult]: At program point L240-1(line 240) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,853 INFO L264 CegarLoopResult]: At program point L240-2(line 240) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,853 INFO L264 CegarLoopResult]: At program point L269(line 269) the Hoare annotation is: (let ((.cse23 (+ ~c_num_read~0 1))) (let ((.cse10 (= 0 ~q_free~0)) (.cse11 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse12 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse13 (<= .cse23 ~p_num_write~0)) (.cse14 (<= ~p_num_write~0 .cse23)) (.cse15 (= 1 ~p_dw_pc~0)) (.cse16 (<= 2 ~p_dw_st~0)) (.cse22 (= 1 ~p_dw_i~0))) (let ((.cse0 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse2 (not (= 1 |old(~q_free~0)|))) (.cse4 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse6 (not (<= |old(~p_num_write~0)| 0))) (.cse7 (not (<= 0 |old(~p_num_write~0)|))) (.cse8 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse5 (not (<= 2 |old(~c_dr_st~0)|))) (.cse17 (not (= 1 |old(~p_dw_pc~0)|))) (.cse20 (not (<= 2 |old(~p_dw_st~0)|))) (.cse3 (not .cse22)) (.cse18 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse19 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse9 (and .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse22 .cse16))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9) (or .cse1 (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 (not (= 1 ~q_read_ev~0)) .cse16) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse0 .cse17 .cse2 .cse3 (= |old(~q_read_ev~0)| 1) .cse18 .cse5 .cse19 .cse8) (or .cse0 .cse1 .cse2 .cse3 (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= 1 ~q_free~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|)) .cse4 (not (<= |old(~c_dr_pc~0)| 0)) .cse6 .cse7 .cse8 .cse9) (or .cse17 .cse20 .cse3 .cse5) (let ((.cse21 (+ |old(~c_num_read~0)| 1))) (or .cse17 .cse20 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse21)) .cse3 .cse18 (not (<= .cse21 |old(~p_num_write~0)|)) .cse19 .cse9)))))) [2020-07-10 20:37:18,854 INFO L264 CegarLoopResult]: At program point L232(line 232) the Hoare annotation is: (let ((.cse3 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse25 (<= ~p_num_write~0 ~c_num_read~0)) (.cse7 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse8 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse26 (<= ~c_num_read~0 ~p_num_write~0)) (.cse9 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse10 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse11 (= ~a_t~0 |old(~a_t~0)|)) (.cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse13 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse27 (= 0 ~p_dw_st~0)) (.cse28 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse15 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse29 (= 1 ~q_free~0))) (let ((.cse16 (not (<= 2 |old(~c_dr_st~0)|))) (.cse17 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse18 (not (= 0 |old(~p_dw_st~0)|))) (.cse19 (not (= 1 |old(~q_free~0)|))) (.cse20 (and .cse3 .cse25 .cse7 .cse8 .cse26 .cse9 .cse10 .cse11 .cse12 .cse13 .cse27 .cse28 .cse15 .cse29)) (.cse21 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse22 (not (<= |old(~p_num_write~0)| 0))) (.cse23 (not (<= 0 |old(~p_num_write~0)|))) (.cse24 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse0 (not (= 1 |old(~p_dw_pc~0)|))) (.cse1 (not (<= 2 |old(~p_dw_st~0)|))) (.cse2 (not (= 1 ~p_dw_i~0))) (.cse30 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse4 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse5 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse14 (= |old(~q_free~0)| ~q_free~0)) (.cse31 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 .cse1 .cse2 (and .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) .cse16) (or .cse17 .cse18 .cse19 .cse20 .cse2 .cse21 .cse16 .cse22 .cse23 .cse24) (or .cse18 (and .cse3 .cse25 .cse8 (< ~c_last_read~0 (+ ~p_last_write~0 1)) .cse26 .cse9 .cse10 .cse11 .cse12 .cse13 .cse27 .cse28 .cse15 .cse29 (<= ~p_last_write~0 ~c_last_read~0)) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse17 .cse0 .cse19 .cse2 (= |old(~q_read_ev~0)| 1) .cse30 .cse16 .cse31 .cse24) (or .cse17 .cse18 .cse19 .cse2 .cse20 .cse21 (not (<= |old(~c_dr_pc~0)| 0)) .cse22 .cse23 .cse24) (let ((.cse32 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse32)) .cse2 .cse30 (not (<= .cse32 |old(~p_num_write~0)|)) (let ((.cse33 (+ ~c_num_read~0 1))) (and .cse4 .cse5 (<= ~p_num_write~0 .cse33) .cse6 .cse7 .cse8 .cse9 .cse10 (<= .cse33 ~p_num_write~0) .cse11 .cse12 .cse13 .cse14 .cse15)) .cse31))))) [2020-07-10 20:37:18,854 INFO L264 CegarLoopResult]: At program point L253(line 253) the Hoare annotation is: (let ((.cse9 (<= ~p_num_write~0 ~c_num_read~0)) (.cse14 (<= ~c_num_read~0 ~p_num_write~0)) (.cse15 (<= 2 ~c_dr_st~0)) (.cse32 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse33 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse34 (= 1 ~p_dw_pc~0)) (.cse11 (= 1 ~p_dw_i~0)) (.cse21 (= 0 ~p_dw_st~0)) (.cse35 (not (= 1 ~q_read_ev~0))) (.cse24 (= 1 ~q_free~0)) (.cse36 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse37 (<= ~p_last_write~0 ~c_last_read~0))) (let ((.cse0 (and .cse9 .cse14 .cse15 .cse32 .cse33 .cse34 .cse11 .cse21 .cse35 .cse24 .cse36 .cse37)) (.cse12 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse13 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse16 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse17 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse18 (= ~a_t~0 |old(~a_t~0)|)) (.cse19 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse20 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse23 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse25 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse10 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse22 (not (= ~p_dw_pc~0 ~q_free~0))) (.cse27 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse29 (not (<= |old(~p_num_write~0)| 0))) (.cse30 (not (<= 0 |old(~p_num_write~0)|))) (.cse2 (not (<= 2 |old(~p_dw_st~0)|))) (.cse8 (not (= 0 |old(~p_dw_st~0)|))) (.cse7 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse1 (not (= 1 |old(~p_dw_pc~0)|))) (.cse26 (not (= 1 |old(~q_free~0)|))) (.cse4 (not .cse11)) (.cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse28 (not (<= 2 |old(~c_dr_st~0)|))) (.cse6 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (let ((.cse3 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 .cse2 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse3)) .cse4 .cse5 (not (<= .cse3 |old(~p_num_write~0)|)) .cse6)) (or .cse7 .cse0 .cse8 (and .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25) .cse26 .cse4 .cse27 .cse28 .cse29 .cse30 .cse31) (or .cse7 .cse0 .cse8 .cse26 (and .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25) (and .cse14 .cse9 .cse15 .cse10 .cse11 .cse21 .cse22 .cse24) .cse4 .cse27 (not (<= |old(~c_dr_pc~0)| 0)) .cse29 .cse30 .cse31) (or .cse1 .cse2 .cse4 .cse28) (or .cse8 (and .cse14 .cse9 .cse15 .cse32 .cse33 .cse34 .cse21 .cse35 .cse24 .cse36 .cse37) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse7 .cse1 .cse26 .cse4 (= |old(~q_read_ev~0)| 1) .cse5 .cse28 .cse6 .cse31)))) [2020-07-10 20:37:18,855 INFO L264 CegarLoopResult]: At program point L249(line 249) the Hoare annotation is: (let ((.cse17 (<= ~p_num_write~0 ~c_num_read~0)) (.cse16 (<= ~c_num_read~0 ~p_num_write~0)) (.cse18 (<= 2 ~c_dr_st~0)) (.cse21 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse22 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse23 (= 1 ~p_dw_pc~0)) (.cse27 (= 1 ~p_dw_i~0)) (.cse19 (= 0 ~p_dw_st~0)) (.cse24 (not (= 1 ~q_read_ev~0))) (.cse20 (= 1 ~q_free~0)) (.cse25 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse26 (<= ~p_last_write~0 ~c_last_read~0))) (let ((.cse0 (and .cse17 .cse16 .cse18 .cse21 .cse22 .cse23 .cse27 .cse19 .cse24 .cse20 .cse25 .cse26)) (.cse10 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse13 (not (<= |old(~p_num_write~0)| 0))) (.cse12 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_num_read~0 |old(~c_num_read~0)|) .cse17 (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) .cse16 (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) .cse20)) (.cse14 (not (<= 0 |old(~p_num_write~0)|))) (.cse2 (not (<= 2 |old(~p_dw_st~0)|))) (.cse8 (not (= 0 |old(~p_dw_st~0)|))) (.cse7 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse1 (not (= 1 |old(~p_dw_pc~0)|))) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse4 (not .cse27)) (.cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse6 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse15 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (let ((.cse3 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 .cse2 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse3)) .cse4 .cse5 (not (<= .cse3 |old(~p_num_write~0)|)) .cse6)) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 (not (<= |old(~c_dr_pc~0)| 0)) (and .cse16 .cse17 .cse18 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse19 (not (= ~p_dw_pc~0 ~q_free~0)) .cse20) .cse13 .cse12 .cse14 .cse15) (or .cse1 .cse2 .cse4 .cse11) (or .cse8 (and .cse16 .cse17 .cse18 .cse21 .cse22 .cse23 .cse19 .cse24 .cse20 .cse25 .cse26) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse7 .cse1 .cse9 .cse4 (= |old(~q_read_ev~0)| 1) .cse5 .cse11 .cse6 .cse15)))) [2020-07-10 20:37:18,855 INFO L264 CegarLoopResult]: At program point L249-1(line 249) the Hoare annotation is: (let ((.cse17 (<= ~p_num_write~0 ~c_num_read~0)) (.cse16 (<= ~c_num_read~0 ~p_num_write~0)) (.cse18 (<= 2 ~c_dr_st~0)) (.cse21 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse22 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse23 (= 1 ~p_dw_pc~0)) (.cse27 (= 1 ~p_dw_i~0)) (.cse19 (= 0 ~p_dw_st~0)) (.cse24 (not (= 1 ~q_read_ev~0))) (.cse20 (= 1 ~q_free~0)) (.cse25 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse26 (<= ~p_last_write~0 ~c_last_read~0))) (let ((.cse0 (and .cse17 .cse16 .cse18 .cse21 .cse22 .cse23 .cse27 .cse19 .cse24 .cse20 .cse25 .cse26)) (.cse10 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse13 (not (<= |old(~p_num_write~0)| 0))) (.cse12 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_num_read~0 |old(~c_num_read~0)|) .cse17 (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) .cse16 (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) .cse20)) (.cse14 (not (<= 0 |old(~p_num_write~0)|))) (.cse2 (not (<= 2 |old(~p_dw_st~0)|))) (.cse8 (not (= 0 |old(~p_dw_st~0)|))) (.cse7 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse1 (not (= 1 |old(~p_dw_pc~0)|))) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse4 (not .cse27)) (.cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse6 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse15 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (let ((.cse3 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 .cse2 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse3)) .cse4 .cse5 (not (<= .cse3 |old(~p_num_write~0)|)) .cse6)) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 (not (<= |old(~c_dr_pc~0)| 0)) (and .cse16 .cse17 .cse18 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse19 (not (= ~p_dw_pc~0 ~q_free~0)) .cse20) .cse13 .cse12 .cse14 .cse15) (or .cse1 .cse2 .cse4 .cse11) (or .cse8 (and .cse16 .cse17 .cse18 .cse21 .cse22 .cse23 .cse19 .cse24 .cse20 .cse25 .cse26) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse7 .cse1 .cse9 .cse4 (= |old(~q_read_ev~0)| 1) .cse5 .cse11 .cse6 .cse15)))) [2020-07-10 20:37:18,856 INFO L264 CegarLoopResult]: At program point L249-2(line 249) the Hoare annotation is: (let ((.cse17 (<= ~p_num_write~0 ~c_num_read~0)) (.cse16 (<= ~c_num_read~0 ~p_num_write~0)) (.cse18 (<= 2 ~c_dr_st~0)) (.cse21 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse22 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse23 (= 1 ~p_dw_pc~0)) (.cse27 (= 1 ~p_dw_i~0)) (.cse19 (= 0 ~p_dw_st~0)) (.cse24 (not (= 1 ~q_read_ev~0))) (.cse20 (= 1 ~q_free~0)) (.cse25 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse26 (<= ~p_last_write~0 ~c_last_read~0))) (let ((.cse0 (and .cse17 .cse16 .cse18 .cse21 .cse22 .cse23 .cse27 .cse19 .cse24 .cse20 .cse25 .cse26)) (.cse10 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse13 (not (<= |old(~p_num_write~0)| 0))) (.cse12 (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_num_read~0 |old(~c_num_read~0)|) .cse17 (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) .cse16 (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) .cse20)) (.cse14 (not (<= 0 |old(~p_num_write~0)|))) (.cse2 (not (<= 2 |old(~p_dw_st~0)|))) (.cse8 (not (= 0 |old(~p_dw_st~0)|))) (.cse7 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse1 (not (= 1 |old(~p_dw_pc~0)|))) (.cse9 (not (= 1 |old(~q_free~0)|))) (.cse4 (not .cse27)) (.cse5 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse6 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse15 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (let ((.cse3 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 .cse2 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse3)) .cse4 .cse5 (not (<= .cse3 |old(~p_num_write~0)|)) .cse6)) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) (or .cse7 .cse0 .cse8 .cse9 .cse4 .cse10 (not (<= |old(~c_dr_pc~0)| 0)) (and .cse16 .cse17 .cse18 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse19 (not (= ~p_dw_pc~0 ~q_free~0)) .cse20) .cse13 .cse12 .cse14 .cse15) (or .cse1 .cse2 .cse4 .cse11) (or .cse8 (and .cse16 .cse17 .cse18 .cse21 .cse22 .cse23 .cse19 .cse24 .cse20 .cse25 .cse26) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse7 .cse1 .cse9 .cse4 (= |old(~q_read_ev~0)| 1) .cse5 .cse11 .cse6 .cse15)))) [2020-07-10 20:37:18,856 INFO L264 CegarLoopResult]: At program point L278(lines 230 283) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,857 INFO L264 CegarLoopResult]: At program point L266(lines 266 273) the Hoare annotation is: (let ((.cse37 (+ ~c_num_read~0 1))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse1 (= 0 ~q_free~0)) (.cse2 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse3 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse4 (<= .cse37 ~p_num_write~0)) (.cse5 (<= ~p_num_write~0 .cse37)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse35 (= 1 ~p_dw_i~0)) (.cse8 (<= 2 ~p_dw_st~0))) (let ((.cse14 (not (<= 2 |old(~c_dr_st~0)|))) (.cse9 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse0 (not (= 0 |old(~p_dw_st~0)|))) (.cse11 (not (= 1 |old(~q_free~0)|))) (.cse18 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse23 (not (<= |old(~c_dr_pc~0)| 0))) (.cse19 (not (<= |old(~p_num_write~0)| 0))) (.cse20 (let ((.cse36 (+ |old(~p_num_write~0)| 1))) (and .cse1 .cse2 .cse3 (<= ~p_num_write~0 .cse36) .cse4 .cse5 .cse6 .cse35 (<= .cse36 ~p_num_write~0) .cse8))) (.cse21 (not (<= 0 |old(~p_num_write~0)|))) (.cse16 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse17 (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse35 .cse7 .cse8)) (.cse24 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse25 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse26 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse27 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse28 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse29 (= ~a_t~0 |old(~a_t~0)|)) (.cse30 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse31 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse32 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse33 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse10 (not (= 1 |old(~p_dw_pc~0)|))) (.cse22 (not (<= 2 |old(~p_dw_st~0)|))) (.cse12 (not .cse35)) (.cse13 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse15 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse9 .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| 1) .cse13 .cse14 .cse15 .cse16) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse14 .cse19 .cse20 .cse21 .cse16) (or .cse10 .cse22 .cse12 .cse14) (or .cse17 .cse9 .cse0 .cse11 .cse12 .cse18 .cse23 .cse14 .cse19 (<= ~c_dr_pc~0 0) .cse21 .cse16) (or .cse9 .cse17 .cse0 .cse11 .cse12 .cse18 .cse23 .cse19 (and .cse24 (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) .cse25 .cse26 (<= ~c_num_read~0 ~p_num_write~0) .cse27 .cse28 .cse29 .cse30 .cse31 .cse32 .cse33 (= 1 ~q_free~0)) .cse20 .cse21 .cse16) (let ((.cse34 (+ |old(~c_num_read~0)| 1))) (or .cse17 (and .cse24 (= ~p_num_write~0 |old(~p_num_write~0)|) .cse5 .cse25 .cse26 .cse27 .cse28 .cse4 .cse29 .cse30 .cse31 .cse32 (= |old(~q_free~0)| ~q_free~0) .cse33) .cse10 .cse22 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse34)) .cse12 .cse13 (not (<= .cse34 |old(~p_num_write~0)|)) .cse15)))))) [2020-07-10 20:37:18,857 INFO L264 CegarLoopResult]: At program point L233(line 233) the Hoare annotation is: (let ((.cse3 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse25 (<= ~p_num_write~0 ~c_num_read~0)) (.cse7 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse8 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse26 (<= ~c_num_read~0 ~p_num_write~0)) (.cse9 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse10 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse11 (= ~a_t~0 |old(~a_t~0)|)) (.cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse13 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse27 (= 0 ~p_dw_st~0)) (.cse28 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse15 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse29 (= 1 ~q_free~0))) (let ((.cse16 (not (<= 2 |old(~c_dr_st~0)|))) (.cse17 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse18 (not (= 0 |old(~p_dw_st~0)|))) (.cse19 (not (= 1 |old(~q_free~0)|))) (.cse20 (and .cse3 .cse25 .cse7 .cse8 .cse26 .cse9 .cse10 .cse11 .cse12 .cse13 .cse27 .cse28 .cse15 .cse29)) (.cse21 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse22 (not (<= |old(~p_num_write~0)| 0))) (.cse23 (not (<= 0 |old(~p_num_write~0)|))) (.cse24 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) (.cse0 (not (= 1 |old(~p_dw_pc~0)|))) (.cse1 (not (<= 2 |old(~p_dw_st~0)|))) (.cse2 (not (= 1 ~p_dw_i~0))) (.cse30 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse4 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse5 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse6 (= 1 ~p_dw_pc~0)) (.cse14 (= |old(~q_free~0)| ~q_free~0)) (.cse31 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|)))) (and (or .cse0 .cse1 .cse2 (and .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15) .cse16) (or .cse17 .cse18 .cse19 .cse20 .cse2 .cse21 .cse16 .cse22 .cse23 .cse24) (or .cse18 (and .cse3 .cse25 .cse8 (< ~c_last_read~0 (+ ~p_last_write~0 1)) .cse26 .cse9 .cse10 .cse11 .cse12 .cse13 .cse27 .cse28 .cse15 .cse29 (<= ~p_last_write~0 ~c_last_read~0)) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse17 .cse0 .cse19 .cse2 (= |old(~q_read_ev~0)| 1) .cse30 .cse16 .cse31 .cse24) (or .cse17 .cse18 .cse19 .cse2 .cse20 .cse21 (not (<= |old(~c_dr_pc~0)| 0)) .cse22 .cse23 .cse24) (let ((.cse32 (+ |old(~c_num_read~0)| 1))) (or .cse0 .cse1 (not (= 0 |old(~q_free~0)|)) (not (<= |old(~p_num_write~0)| .cse32)) .cse2 .cse30 (not (<= .cse32 |old(~p_num_write~0)|)) (let ((.cse33 (+ ~c_num_read~0 1))) (and .cse4 .cse5 (<= ~p_num_write~0 .cse33) .cse6 .cse7 .cse8 .cse9 .cse10 (<= .cse33 ~p_num_write~0) .cse11 .cse12 .cse13 .cse14 .cse15)) .cse31))))) [2020-07-10 20:37:18,857 INFO L264 CegarLoopResult]: At program point L262(lines 237 277) the Hoare annotation is: (let ((.cse55 (+ ~c_num_read~0 1))) (let ((.cse53 (+ |old(~c_num_read~0)| 1)) (.cse41 (= 0 ~p_dw_st~0)) (.cse48 (not (= 1 ~q_read_ev~0))) (.cse49 (< ~c_last_read~0 (+ ~p_last_write~0 1))) (.cse50 (<= ~p_last_write~0 ~c_last_read~0)) (.cse17 (= |old(~p_dw_st~0)| ~p_dw_st~0)) (.cse16 (= ~c_num_read~0 |old(~c_num_read~0)|)) (.cse39 (<= ~p_num_write~0 ~c_num_read~0)) (.cse20 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse21 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse38 (<= ~c_num_read~0 ~p_num_write~0)) (.cse22 (= ~p_last_write~0 |old(~p_last_write~0)|)) (.cse23 (= ~q_buf_0~0 |old(~q_buf_0~0)|)) (.cse24 (= ~a_t~0 |old(~a_t~0)|)) (.cse25 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse26 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse45 (= |old(~p_dw_pc~0)| ~p_dw_pc~0)) (.cse28 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (.cse37 (= 1 ~q_free~0)) (.cse40 (<= 2 ~c_dr_st~0)) (.cse51 (= 0 ~q_free~0)) (.cse46 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse47 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse44 (<= .cse55 ~p_num_write~0)) (.cse43 (<= ~p_num_write~0 .cse55)) (.cse19 (= 1 ~p_dw_pc~0)) (.cse52 (= 1 ~p_dw_i~0)) (.cse42 (<= 2 ~p_dw_st~0))) (let ((.cse2 (not (<= |old(~p_num_write~0)| 0))) (.cse3 (let ((.cse54 (+ |old(~p_num_write~0)| 1))) (and .cse51 .cse46 .cse47 (<= ~p_num_write~0 .cse54) .cse44 .cse43 .cse19 .cse52 (<= .cse54 ~p_num_write~0) .cse42))) (.cse4 (not (<= 0 |old(~p_num_write~0)|))) (.cse9 (= |old(~p_dw_pc~0)| |old(~q_free~0)|)) (.cse10 (and .cse40 .cse19 .cse52 .cse42)) (.cse36 (not (<= |old(~c_dr_pc~0)| 0))) (.cse12 (and .cse17 .cse16 .cse39 .cse20 .cse21 .cse38 .cse22 .cse23 .cse24 .cse25 .cse26 .cse45 .cse28 .cse37)) (.cse0 (and .cse39 .cse38 .cse40 .cse46 .cse47 .cse19 .cse52 .cse41 .cse48 .cse37 .cse49 .cse50)) (.cse29 (not (= 0 |old(~q_free~0)|))) (.cse30 (and .cse40 .cse19 .cse52 .cse48 .cse42)) (.cse34 (not (<= .cse53 |old(~p_num_write~0)|))) (.cse18 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse27 (= |old(~q_free~0)| ~q_free~0)) (.cse5 (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse52 .cse48 .cse42)) (.cse15 (not (<= 2 |old(~p_dw_st~0)|))) (.cse31 (not (<= |old(~p_num_write~0)| .cse53))) (.cse1 (not (= 0 |old(~p_dw_st~0)|))) (.cse6 (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|))) (.cse14 (not (= 1 |old(~p_dw_pc~0)|))) (.cse7 (not (= 1 |old(~q_free~0)|))) (.cse8 (not .cse52)) (.cse32 (= |old(~q_read_ev~0)| 1)) (.cse33 (not (<= |old(~p_last_write~0)| |old(~q_buf_0~0)|))) (.cse11 (not (<= 2 |old(~c_dr_st~0)|))) (.cse35 (not (<= |old(~q_buf_0~0)| |old(~p_last_write~0)|))) (.cse13 (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse13) (or .cse14 .cse15 .cse8 (and .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28) .cse11) (or .cse5 .cse0 .cse14 .cse15 .cse29 .cse30 .cse31 .cse8 .cse32 .cse33 .cse34 .cse35) (or .cse1 .cse30 .cse2 (<= ~c_dr_pc~0 0) .cse4 .cse5 .cse6 .cse7 .cse8 .cse9 .cse36 .cse11 .cse37 .cse13) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse6 .cse5 .cse7 .cse8 .cse9 .cse10 .cse36 (and .cse38 .cse39 .cse40 .cse18 .cse41 (not (= ~p_dw_pc~0 ~q_free~0)) .cse37) .cse12 .cse13) (or .cse0 .cse29 .cse30 .cse34 (and .cse40 .cse19 .cse37 .cse42) (and .cse17 .cse18 .cse43 .cse20 .cse21 .cse22 .cse23 .cse44 .cse24 .cse26 .cse45 .cse27 .cse28) .cse5 .cse14 .cse15 .cse31 .cse8 .cse33 .cse35) (or .cse1 (and .cse38 .cse39 .cse40 .cse46 .cse47 .cse19 .cse41 .cse48 .cse37 .cse49 .cse50) (not (< |old(~c_last_read~0)| (+ |old(~p_last_write~0)| 1))) (and .cse40 .cse19 .cse48 .cse42) (and .cse51 .cse46 .cse47 .cse44 .cse43 .cse19 .cse48 .cse42) (not (<= |old(~p_last_write~0)| |old(~c_last_read~0)|)) .cse6 .cse14 .cse7 .cse8 .cse32 .cse33 .cse11 .cse35 .cse13))))) [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L290-1(line 290) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L290-2(line 290) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L290-3(line 290) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L286(line 286) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point stop_simulationFINAL(lines 284 302) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L299(lines 288 301) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L298(line 298) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point stop_simulationEXIT(lines 284 302) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L293(line 293) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L292(lines 292 297) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point stop_simulationENTRY(lines 284 302) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L290(line 290) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point L62(lines 50 64) the Hoare annotation is: true [2020-07-10 20:37:18,858 INFO L271 CegarLoopResult]: At program point is_do_read_c_triggeredENTRY(lines 47 65) the Hoare annotation is: true [2020-07-10 20:37:18,859 INFO L264 CegarLoopResult]: At program point L53(line 53) the Hoare annotation is: (let ((.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse0 (= 1 ~p_dw_pc~0))) (and (or (not .cse0) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (= 0 ~p_dw_st~0)) .cse1 .cse2 .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (= ~c_dr_pc~0 1) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_read_ev~0)) (not (= 1 ~q_free~0))) (let ((.cse4 (+ ~c_num_read~0 1))) (or (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 (not (<= ~p_num_write~0 .cse4)) .cse3 .cse0 (not (= 0 ~q_free~0)) (not (<= .cse4 ~p_num_write~0)))))) [2020-07-10 20:37:18,859 INFO L264 CegarLoopResult]: At program point L52(lines 52 57) the Hoare annotation is: (let ((.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse0 (= 1 ~p_dw_pc~0))) (and (or (not .cse0) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (= 0 ~p_dw_st~0)) .cse1 .cse2 .cse3 (not (<= ~p_num_write~0 ~c_num_read~0)) (= ~c_dr_pc~0 1) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_read_ev~0)) (not (= 1 ~q_free~0))) (let ((.cse4 (+ ~c_num_read~0 1))) (or (not (<= ~c_dr_pc~0 0)) .cse1 .cse2 (not (<= ~p_num_write~0 .cse4)) .cse3 .cse0 (not (= 0 ~q_free~0)) (not (<= .cse4 ~p_num_write~0)))))) [2020-07-10 20:37:18,859 INFO L271 CegarLoopResult]: At program point L51(lines 51 60) the Hoare annotation is: true [2020-07-10 20:37:18,859 INFO L271 CegarLoopResult]: At program point L51-2(lines 51 60) the Hoare annotation is: true [2020-07-10 20:37:18,859 INFO L271 CegarLoopResult]: At program point is_do_read_c_triggeredFINAL(lines 47 65) the Hoare annotation is: true [2020-07-10 20:37:18,859 INFO L271 CegarLoopResult]: At program point is_do_read_c_triggeredEXIT(lines 47 65) the Hoare annotation is: true [2020-07-10 20:37:18,859 INFO L264 CegarLoopResult]: At program point L320(lines 320 324) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,860 INFO L264 CegarLoopResult]: At program point L318(line 318) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,860 INFO L264 CegarLoopResult]: At program point L318-1(line 318) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,860 INFO L264 CegarLoopResult]: At program point L318-2(line 318) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,860 INFO L271 CegarLoopResult]: At program point start_simulationEXIT(lines 303 331) the Hoare annotation is: true [2020-07-10 20:37:18,860 INFO L264 CegarLoopResult]: At program point L314(line 314) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,861 INFO L264 CegarLoopResult]: At program point L310(line 310) the Hoare annotation is: (or (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= 1 ~q_free~0)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,861 INFO L264 CegarLoopResult]: At program point start_simulationENTRY(lines 303 331) the Hoare annotation is: (or (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= 1 ~q_free~0)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,861 INFO L264 CegarLoopResult]: At program point L317(line 317) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,862 INFO L264 CegarLoopResult]: At program point L317-1(line 317) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,862 INFO L264 CegarLoopResult]: At program point L313-1(lines 310 325) the Hoare annotation is: (let ((.cse15 (+ ~c_num_read~0 1))) (let ((.cse3 (= 0 ~q_free~0)) (.cse7 (<= .cse15 ~p_num_write~0)) (.cse8 (<= ~p_num_write~0 .cse15)) (.cse2 (<= 2 ~p_dw_st~0)) (.cse4 (<= ~q_buf_0~0 ~p_last_write~0)) (.cse5 (<= ~p_last_write~0 ~q_buf_0~0)) (.cse1 (= 1 ~p_dw_pc~0)) (.cse9 (not (= 1 ~q_read_ev~0))) (.cse11 (<= ~c_num_read~0 ~p_num_write~0)) (.cse10 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= 2 ~c_dr_st~0)) (.cse12 (= ~p_num_write~0 |old(~p_num_write~0)|)) (.cse13 (= 0 ~p_dw_st~0)) (.cse14 (= 1 ~q_free~0))) (or (and .cse0 .cse1 .cse2) (not (= 0 |old(~p_dw_st~0)|)) (let ((.cse6 (+ |old(~p_num_write~0)| 1))) (and .cse3 .cse4 .cse5 (<= ~p_num_write~0 .cse6) .cse7 .cse8 .cse1 (<= .cse6 ~p_num_write~0) .cse2)) (not (<= |old(~p_num_write~0)| 0)) (and .cse3 .cse4 .cse5 .cse7 .cse8 .cse1 .cse9 .cse2) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and .cse10 .cse11 .cse12 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse13 (= |old(~p_dw_pc~0)| ~p_dw_pc~0) .cse14 (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (and .cse10 .cse11 .cse0 .cse4 .cse5 .cse1 .cse13 .cse9 .cse14 (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= |old(~c_dr_pc~0)| 0)) (and .cse11 .cse10 .cse0 .cse12 .cse13 (not (= ~p_dw_pc~0 ~q_free~0)) .cse14) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))))) [2020-07-10 20:37:18,862 INFO L264 CegarLoopResult]: At program point L309(line 309) the Hoare annotation is: (or (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= 1 ~q_free~0)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,862 INFO L264 CegarLoopResult]: At program point L305(line 305) the Hoare annotation is: (or (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (= 1 ~p_dw_i~0)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_last_write~0 |old(~p_last_write~0)|) (= ~q_buf_0~0 |old(~q_buf_0~0)|) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= 0 ~p_dw_st~0) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= 1 ~q_free~0)) (= |old(~p_dw_pc~0)| |old(~q_free~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,862 INFO L271 CegarLoopResult]: At program point L326(lines 303 331) the Hoare annotation is: true [2020-07-10 20:37:18,862 INFO L271 CegarLoopResult]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2020-07-10 20:37:18,863 INFO L264 CegarLoopResult]: At program point L-1(line -1) the Hoare annotation is: (and (<= ~c_num_read~0 ~p_num_write~0) (<= 0 ~p_num_write~0) (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~q_free~0) (not (= 1 ~p_dw_i~0)) (= 0 ~p_dw_st~0) (<= ~p_num_write~0 0) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0))) [2020-07-10 20:37:18,863 INFO L271 CegarLoopResult]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2020-07-10 20:37:18,863 INFO L271 CegarLoopResult]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2020-07-10 20:37:18,863 INFO L264 CegarLoopResult]: At program point L33(lines 33 38) the Hoare annotation is: (let ((.cse7 (+ ~c_num_read~0 1))) (let ((.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse7))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse4 (= 1 ~p_dw_pc~0)) (.cse5 (not (= 0 ~q_free~0))) (.cse6 (not (<= .cse7 ~p_num_write~0)))) (and (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (not (<= 2 ~c_dr_st~0)) .cse6)))) [2020-07-10 20:37:18,863 INFO L271 CegarLoopResult]: At program point L32(lines 32 41) the Hoare annotation is: true [2020-07-10 20:37:18,863 INFO L264 CegarLoopResult]: At program point L32-2(lines 32 41) the Hoare annotation is: (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not (= 1 ~q_read_ev~0)) (not (<= 2 ~p_dw_st~0))) [2020-07-10 20:37:18,863 INFO L264 CegarLoopResult]: At program point is_do_write_p_triggeredFINAL(lines 28 46) the Hoare annotation is: (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (and (<= 1 |is_do_write_p_triggered_#res|) (<= 1 is_do_write_p_triggered_~__retres1~0)) (not (= 1 ~q_free~0)) (not (= 1 ~q_read_ev~0)) (not (<= 2 ~p_dw_st~0))) [2020-07-10 20:37:18,863 INFO L264 CegarLoopResult]: At program point is_do_write_p_triggeredEXIT(lines 28 46) the Hoare annotation is: (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (and (<= 1 |is_do_write_p_triggered_#res|) (<= 1 is_do_write_p_triggered_~__retres1~0)) (not (= 1 ~q_free~0)) (not (= 1 ~q_read_ev~0)) (not (<= 2 ~p_dw_st~0))) [2020-07-10 20:37:18,863 INFO L264 CegarLoopResult]: At program point L43(lines 31 45) the Hoare annotation is: (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (= 1 ~p_dw_i~0)) (not (<= ~p_num_write~0 ~c_num_read~0)) (not (<= ~c_num_read~0 ~p_num_write~0)) (<= 1 is_do_write_p_triggered_~__retres1~0) (not (< ~c_last_read~0 (+ ~p_last_write~0 1))) (not (= 1 ~q_free~0)) (not (= 1 ~q_read_ev~0)) (not (<= 2 ~p_dw_st~0))) [2020-07-10 20:37:18,863 INFO L271 CegarLoopResult]: At program point is_do_write_p_triggeredENTRY(lines 28 46) the Hoare annotation is: true [2020-07-10 20:37:18,864 INFO L264 CegarLoopResult]: At program point L34(line 34) the Hoare annotation is: (let ((.cse8 (+ ~c_num_read~0 1))) (let ((.cse4 (= 1 ~p_dw_pc~0)) (.cse0 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse1 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse2 (not (<= ~p_num_write~0 .cse8))) (.cse3 (not (= 1 ~p_dw_i~0))) (.cse5 (not (= 0 ~q_free~0))) (.cse7 (not (<= 2 ~c_dr_st~0))) (.cse6 (not (<= .cse8 ~p_num_write~0)))) (and (or (not (<= ~c_dr_pc~0 0)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7 .cse6) (or .cse0 .cse1 .cse2 .cse3 (= 1 ~q_read_ev~0) .cse5 .cse7 .cse6)))) [2020-07-10 20:37:18,864 INFO L264 CegarLoopResult]: At program point do_read_cEXIT(lines 135 191) the Hoare annotation is: (let ((.cse1 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= ~c_num_read~0 ~p_num_write~0)) (.cse2 (<= 2 ~c_dr_st~0)) (.cse3 (= 0 ~p_dw_st~0)) (.cse4 (= 1 ~q_free~0)) (.cse5 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (and .cse0 .cse1 .cse2 .cse3 .cse4) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse5 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse6 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse6 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) (and .cse2 .cse7 .cse4 (<= 2 ~p_dw_st~0)) (and .cse1 .cse0 .cse2 .cse3 .cse7 .cse4 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) .cse5 (not (<= ~p_num_write~0 .cse6)))))) [2020-07-10 20:37:18,864 INFO L264 CegarLoopResult]: At program point L155(line 155) the Hoare annotation is: (let ((.cse1 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= ~c_num_read~0 ~p_num_write~0)) (.cse2 (<= 2 ~c_dr_st~0)) (.cse3 (= 0 ~p_dw_st~0)) (.cse4 (= 1 ~q_free~0)) (.cse5 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (and .cse0 .cse1 .cse2 .cse3 .cse4) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse5 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse6 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse6 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) (and .cse2 .cse7 .cse4 (<= 2 ~p_dw_st~0)) (and .cse1 .cse0 .cse2 .cse3 .cse7 .cse4 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) .cse5 (not (<= ~p_num_write~0 .cse6)))))) [2020-07-10 20:37:18,864 INFO L264 CegarLoopResult]: At program point L151(lines 150 185) the Hoare annotation is: (let ((.cse1 (<= ~c_num_read~0 ~p_num_write~0)) (.cse0 (<= ~p_num_write~0 ~c_num_read~0)) (.cse7 (= 0 ~p_dw_st~0)) (.cse8 (= 1 ~q_free~0)) (.cse2 (= ~a_t~0 |old(~a_t~0)|)) (.cse3 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse4 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse5 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse6 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse9 (not (= 1 ~p_dw_i~0)))) (and (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse9 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse11 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (and .cse1 .cse0 .cse7 (not (= 1 ~q_read_ev~0)) .cse8 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (let ((.cse10 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (not (= ~c_dr_pc~0 1)) (<= .cse10 ~p_num_write~0) (<= ~p_num_write~0 .cse10) .cse2 .cse3 .cse4 .cse5 .cse6 (= |old(~q_free~0)| ~q_free~0))) (not (<= .cse11 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse9 (not (<= ~p_num_write~0 .cse11)))))) [2020-07-10 20:37:18,865 INFO L264 CegarLoopResult]: At program point L143(lines 138 190) the Hoare annotation is: (let ((.cse9 (+ |old(~c_num_read~0)| 1))) (let ((.cse0 (not (= 1 ~p_dw_pc~0))) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (<= .cse9 ~p_num_write~0))) (.cse4 (not (= 0 |old(~q_free~0)|))) (.cse5 (not (<= 2 |old(~p_dw_st~0)|))) (.cse6 (not (= 1 ~p_dw_i~0))) (.cse7 (not (<= ~p_num_write~0 .cse9)))) (and (or .cse0 (= 1 |old(~c_dr_pc~0)|) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse6 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 (let ((.cse8 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= .cse8 ~p_num_write~0) (<= ~p_num_write~0 .cse8) (= ~a_t~0 |old(~a_t~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~q_free~0)| ~q_free~0))))))) [2020-07-10 20:37:18,865 INFO L264 CegarLoopResult]: At program point L172(lines 172 184) the Hoare annotation is: (let ((.cse1 (not (= 1 ~p_dw_i~0)))) (and (let ((.cse0 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~p_dw_st~0) (not (= 1 ~q_read_ev~0)) (= 1 ~q_free~0) (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse0 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse1 (not (<= ~p_num_write~0 .cse0)))) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse1 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))))) [2020-07-10 20:37:18,865 INFO L264 CegarLoopResult]: At program point L139(lines 139 147) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0))) (.cse1 (= ~a_t~0 |old(~a_t~0)|)) (.cse2 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse4 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse3 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse5 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) .cse1 .cse2 .cse3 .cse4 .cse5 (= 0 ~p_dw_st~0) (= 1 ~q_free~0)) (not (<= 0 ~p_num_write~0))) (let ((.cse6 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse6 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse6)) (let ((.cse7 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= .cse7 ~p_num_write~0) (<= ~p_num_write~0 .cse7) .cse1 .cse2 .cse4 .cse3 .cse5 (= |old(~q_free~0)| ~q_free~0))))))) [2020-07-10 20:37:18,865 INFO L264 CegarLoopResult]: At program point L168(line 168) the Hoare annotation is: (let ((.cse9 (+ |old(~c_num_read~0)| 1))) (let ((.cse8 (not (<= |old(~c_dr_pc~0)| 0))) (.cse0 (not (= 1 ~p_dw_pc~0))) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (<= .cse9 ~p_num_write~0))) (.cse5 (not (= 0 |old(~q_free~0)|))) (.cse4 (not (<= 2 |old(~p_dw_st~0)|))) (.cse6 (not (= 1 ~p_dw_i~0))) (.cse7 (not (<= ~p_num_write~0 .cse9)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 (<= ~c_dr_pc~0 0)) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse6 .cse8 (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (or .cse0 .cse1 .cse2 .cse3 .cse5 .cse4 .cse6 .cse7 (and (<= ~p_num_write~0 ~c_num_read~0) (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 1 ~q_free~0) (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0))) (or .cse0 (= 1 |old(~c_dr_pc~0)|) .cse1 .cse2 .cse3 .cse5 .cse4 (not (= ~c_dr_pc~0 1)) .cse6 .cse7)))) [2020-07-10 20:37:18,865 INFO L264 CegarLoopResult]: At program point L152-1(lines 152 162) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse1 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse1 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse1)) (let ((.cse2 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= .cse2 ~p_num_write~0) (<= ~p_num_write~0 .cse2) (= ~a_t~0 |old(~a_t~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~q_free~0)| ~q_free~0))))))) [2020-07-10 20:37:18,866 INFO L264 CegarLoopResult]: At program point L177(line 177) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse1 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse1 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse1)))))) [2020-07-10 20:37:18,866 INFO L264 CegarLoopResult]: At program point L173(lines 173 179) the Hoare annotation is: (let ((.cse1 (not (= 1 ~p_dw_i~0)))) (and (let ((.cse0 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0) (= 0 ~p_dw_st~0) (not (= 1 ~q_read_ev~0)) (= 1 ~q_free~0) (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse0 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse1 (not (<= ~p_num_write~0 .cse0)))) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse1 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))))) [2020-07-10 20:37:18,866 INFO L264 CegarLoopResult]: At program point L169(line 169) the Hoare annotation is: (let ((.cse9 (+ |old(~c_num_read~0)| 1))) (let ((.cse8 (not (<= |old(~c_dr_pc~0)| 0))) (.cse0 (not (= 1 ~p_dw_pc~0))) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (<= .cse9 ~p_num_write~0))) (.cse5 (not (= 0 |old(~q_free~0)|))) (.cse4 (not (<= 2 |old(~p_dw_st~0)|))) (.cse6 (not (= 1 ~p_dw_i~0))) (.cse7 (not (<= ~p_num_write~0 .cse9)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 (<= ~c_dr_pc~0 0)) (or .cse0 .cse1 .cse2 .cse3 .cse5 (and (<= ~p_num_write~0 ~c_num_read~0) (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= ~c_num_read~0 ~p_num_write~0) (= 1 ~q_read_ev~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= 1 ~q_free~0) (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) .cse4 .cse6 .cse7) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse6 .cse8 (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (or .cse0 (= 1 |old(~c_dr_pc~0)|) .cse1 .cse2 .cse3 .cse5 .cse4 (not (= ~c_dr_pc~0 1)) .cse6 .cse7)))) [2020-07-10 20:37:18,866 INFO L264 CegarLoopResult]: At program point L169-1(line 169) the Hoare annotation is: (let ((.cse1 (not (= 1 ~p_dw_i~0)))) (and (let ((.cse0 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse0 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) (and (<= ~c_num_read~0 ~p_num_write~0) (<= ~p_num_write~0 ~c_num_read~0) (= 1 ~q_read_ev~0) (= 0 ~p_dw_st~0) (= 1 ~q_free~0) (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) .cse1 (not (<= ~p_num_write~0 .cse0)))) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse1 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))))) [2020-07-10 20:37:18,866 INFO L264 CegarLoopResult]: At program point L165(line 165) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse1 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse1 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse1)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (= |old(~p_dw_st~0)| ~p_dw_st~0) (= 0 ~q_free~0) (= ~a_t~0 |old(~a_t~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (<= do_read_c_~a~0 ~p_last_write~0) (<= ~p_last_write~0 do_read_c_~a~0)))))) [2020-07-10 20:37:18,867 INFO L264 CegarLoopResult]: At program point L186(lines 135 191) the Hoare annotation is: (let ((.cse1 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= ~c_num_read~0 ~p_num_write~0)) (.cse2 (<= 2 ~c_dr_st~0)) (.cse3 (= 0 ~p_dw_st~0)) (.cse4 (= 1 ~q_free~0)) (.cse5 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (and .cse0 .cse1 .cse2 .cse3 .cse4) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse5 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse7 (not (= 1 ~q_read_ev~0))) (.cse6 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse6 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) (and .cse2 .cse7 .cse4 (<= 2 ~p_dw_st~0)) (and .cse1 .cse0 .cse2 .cse3 .cse7 .cse4 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) .cse5 (not (<= ~p_num_write~0 .cse6)))))) [2020-07-10 20:37:18,867 INFO L264 CegarLoopResult]: At program point L153(line 153) the Hoare annotation is: (let ((.cse1 (<= ~p_num_write~0 ~c_num_read~0)) (.cse0 (<= ~c_num_read~0 ~p_num_write~0)) (.cse2 (= 0 ~p_dw_st~0)) (.cse3 (= 1 ~q_free~0)) (.cse5 (not (= 1 ~p_dw_i~0)))) (and (let ((.cse4 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (and .cse0 .cse1 .cse2 (not (= 1 ~q_read_ev~0)) .cse3 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse4 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse5 (not (<= ~p_num_write~0 .cse4)))) (or (and .cse1 .cse0 (= ~a_t~0 |old(~a_t~0)|) (= ~c_last_read~0 |old(~c_last_read~0)|) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse2 .cse3) (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse5 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))))) [2020-07-10 20:37:18,867 INFO L264 CegarLoopResult]: At program point L182(line 182) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0)))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse1 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse1 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse1)))))) [2020-07-10 20:37:18,867 INFO L264 CegarLoopResult]: At program point L182-1(lines 138 190) the Hoare annotation is: (let ((.cse1 (<= ~c_num_read~0 ~p_num_write~0)) (.cse0 (<= ~p_num_write~0 ~c_num_read~0)) (.cse7 (= 0 ~p_dw_st~0)) (.cse8 (= 1 ~q_free~0)) (.cse2 (= ~a_t~0 |old(~a_t~0)|)) (.cse3 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse4 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse5 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse6 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|)) (.cse9 (not (= 1 ~p_dw_i~0)))) (and (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8) (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse9 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (let ((.cse11 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (and .cse1 .cse0 .cse7 (not (= 1 ~q_read_ev~0)) .cse8 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (let ((.cse10 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (not (= ~c_dr_pc~0 1)) (<= .cse10 ~p_num_write~0) (<= ~p_num_write~0 .cse10) .cse2 .cse3 .cse4 .cse5 .cse6 (= |old(~q_free~0)| ~q_free~0))) (not (<= .cse11 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse9 (not (<= ~p_num_write~0 .cse11)))))) [2020-07-10 20:37:18,868 INFO L264 CegarLoopResult]: At program point L166(line 166) the Hoare annotation is: (let ((.cse1 (not (= 1 ~p_dw_i~0)))) (and (let ((.cse0 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse0 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse1 (not (<= ~p_num_write~0 .cse0)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (= |old(~p_dw_st~0)| ~p_dw_st~0) (= 0 ~q_free~0) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (<= do_read_c_~a~0 ~p_last_write~0) (<= ~p_last_write~0 do_read_c_~a~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 ~c_last_read~0)))) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse1 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))))) [2020-07-10 20:37:18,868 INFO L264 CegarLoopResult]: At program point do_read_cENTRY(lines 135 191) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0))) (.cse1 (= ~a_t~0 |old(~a_t~0)|)) (.cse2 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse4 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse3 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse5 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) .cse1 .cse2 .cse3 .cse4 .cse5 (= 0 ~p_dw_st~0) (= 1 ~q_free~0)) (not (<= 0 ~p_num_write~0))) (let ((.cse6 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse6 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse6)) (let ((.cse7 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= .cse7 ~p_num_write~0) (<= ~p_num_write~0 .cse7) .cse1 .cse2 .cse4 .cse3 .cse5 (= |old(~q_free~0)| ~q_free~0))))))) [2020-07-10 20:37:18,868 INFO L264 CegarLoopResult]: At program point L154(line 154) the Hoare annotation is: (let ((.cse5 (= 1 ~p_dw_i~0))) (let ((.cse3 (<= ~p_num_write~0 ~c_num_read~0)) (.cse2 (<= ~c_num_read~0 ~p_num_write~0)) (.cse4 (<= 2 ~c_dr_st~0)) (.cse6 (= 0 ~p_dw_st~0)) (.cse7 (= 1 ~q_free~0)) (.cse1 (not .cse5))) (and (let ((.cse0 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse0 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse1 (not (<= ~p_num_write~0 .cse0)) (and .cse2 .cse3 .cse4 .cse5 .cse6 (not (= 1 ~q_read_ev~0)) .cse7 (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)))) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) (and .cse3 .cse2 .cse4 .cse5 (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) .cse6 .cse7) .cse1 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0)))))) [2020-07-10 20:37:18,868 INFO L264 CegarLoopResult]: At program point L142(lines 142 146) the Hoare annotation is: (let ((.cse0 (not (= 1 ~p_dw_i~0))) (.cse1 (= ~a_t~0 |old(~a_t~0)|)) (.cse2 (= ~c_last_read~0 |old(~c_last_read~0)|)) (.cse4 (= ~c_dr_st~0 |old(~c_dr_st~0)|)) (.cse3 (= |old(~q_read_ev~0)| ~q_read_ev~0)) (.cse5 (= ~c_dr_pc~0 |old(~c_dr_pc~0)|))) (and (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse0 (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) .cse1 .cse2 .cse3 .cse4 .cse5 (= 0 ~p_dw_st~0) (= 1 ~q_free~0)) (not (<= 0 ~p_num_write~0))) (let ((.cse6 (+ |old(~c_num_read~0)| 1))) (or (not (= 1 ~p_dw_pc~0)) (not (<= ~p_last_write~0 ~q_buf_0~0)) (not (<= ~q_buf_0~0 ~p_last_write~0)) (not (<= .cse6 ~p_num_write~0)) (not (= 0 |old(~q_free~0)|)) (not (<= 2 |old(~p_dw_st~0)|)) .cse0 (not (<= ~p_num_write~0 .cse6)) (let ((.cse7 (+ ~c_num_read~0 1))) (and (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= .cse7 ~p_num_write~0) (<= ~p_num_write~0 .cse7) .cse1 .cse2 .cse4 .cse3 .cse5 (= |old(~q_free~0)| ~q_free~0))))))) [2020-07-10 20:37:18,868 INFO L264 CegarLoopResult]: At program point L167(line 167) the Hoare annotation is: (let ((.cse9 (+ |old(~c_num_read~0)| 1))) (let ((.cse8 (not (<= |old(~c_dr_pc~0)| 0))) (.cse0 (not (= 1 ~p_dw_pc~0))) (.cse1 (not (<= ~p_last_write~0 ~q_buf_0~0))) (.cse2 (not (<= ~q_buf_0~0 ~p_last_write~0))) (.cse3 (not (<= .cse9 ~p_num_write~0))) (.cse5 (not (= 0 |old(~q_free~0)|))) (.cse4 (not (<= 2 |old(~p_dw_st~0)|))) (.cse6 (not (= 1 ~p_dw_i~0))) (.cse7 (not (<= ~p_num_write~0 .cse9)))) (and (or .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7 .cse8 (<= ~c_dr_pc~0 0)) (or (and (<= ~p_num_write~0 ~c_num_read~0) (= |old(~p_dw_st~0)| ~p_dw_st~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|) (= |old(~q_free~0)| ~q_free~0) (<= do_read_c_~a~0 ~p_last_write~0) (< ~c_last_read~0 (+ ~p_last_write~0 1)) (<= ~p_last_write~0 do_read_c_~a~0) (<= ~p_last_write~0 ~c_last_read~0)) .cse0 .cse1 .cse2 .cse3 .cse5 .cse4 .cse6 .cse7) (or (= |old(~q_free~0)| ~p_dw_pc~0) (not (= 0 |old(~p_dw_st~0)|)) (not (= 1 |old(~q_free~0)|)) (not (<= ~p_num_write~0 |old(~c_num_read~0)|)) .cse6 .cse8 (not (<= |old(~c_num_read~0)| ~p_num_write~0)) (not (<= ~p_num_write~0 0)) (not (<= 0 ~p_num_write~0))) (or .cse0 (= 1 |old(~c_dr_pc~0)|) .cse1 .cse2 .cse3 .cse5 .cse4 (not (= ~c_dr_pc~0 1)) .cse6 .cse7)))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point L337(line 337) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (and (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (not (= 1 ~p_dw_i~0)) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0)) (= 1 ~q_free~0)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point init_modelFINAL(lines 332 348) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= 1 ~p_dw_i~0) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point init_modelEXIT(lines 332 348) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= 1 ~p_dw_i~0) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point L344(line 344) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= 1 ~p_dw_i~0) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point L343(line 343) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= 1 ~p_dw_i~0) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point init_modelENTRY(lines 332 348) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (and (= ~c_num_read~0 |old(~c_num_read~0)|) (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= |old(~c_dr_i~0)| ~c_dr_i~0) (= 0 ~q_free~0) (= ~p_dw_i~0 |old(~p_dw_i~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~c_dr_pc~0 |old(~c_dr_pc~0)|) (= |old(~p_dw_pc~0)| ~p_dw_pc~0) (= ~q_write_ev~0 |old(~q_write_ev~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point L342(line 342) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (= 1 ~p_dw_i~0) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,869 INFO L264 CegarLoopResult]: At program point L341(line 341) the Hoare annotation is: (or (and (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (not (= 1 ~p_dw_i~0)) (<= ~c_dr_pc~0 0) (not (= ~p_dw_pc~0 ~q_free~0)) (= 1 ~q_free~0)) (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,870 INFO L264 CegarLoopResult]: At program point L340(line 340) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (and (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (not (= 1 ~p_dw_i~0)) (<= ~c_dr_pc~0 0) (= 1 ~q_free~0)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,870 INFO L264 CegarLoopResult]: At program point L339(line 339) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (and (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (not (= 1 ~p_dw_i~0)) (<= ~c_dr_pc~0 0) (= 1 ~q_free~0)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:18,870 INFO L264 CegarLoopResult]: At program point L338(line 338) the Hoare annotation is: (or (= 1 |old(~p_dw_pc~0)|) (not (<= |old(~c_num_read~0)| |old(~p_num_write~0)|)) (not (= 0 ~p_dw_st~0)) (not (= 0 |old(~q_free~0)|)) (and (not (= 1 ~p_dw_pc~0)) (<= ~p_num_write~0 ~c_num_read~0) (<= ~c_num_read~0 ~p_num_write~0) (= ~p_num_write~0 |old(~p_num_write~0)|) (not (= 1 ~p_dw_i~0)) (<= ~c_dr_pc~0 0) (not (= 1 ~q_read_ev~0)) (= 1 ~q_free~0)) (= |old(~q_read_ev~0)| 1) (= 1 |old(~p_dw_i~0)|) (not (<= |old(~c_dr_pc~0)| 0)) (not (<= |old(~p_num_write~0)| 0)) (not (<= 0 |old(~p_num_write~0)|)) (not (<= |old(~p_num_write~0)| |old(~c_num_read~0)|))) [2020-07-10 20:37:19,218 INFO L163 areAnnotationChecker]: CFG has 217 edges. 217 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2020-07-10 20:37:19,355 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 10.07 08:37:19 BoogieIcfgContainer [2020-07-10 20:37:19,355 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-10 20:37:19,358 INFO L168 Benchmark]: Toolchain (without parser) took 677119.36 ms. Allocated memory was 138.9 MB in the beginning and 2.3 GB in the end (delta: 2.1 GB). Free memory was 103.2 MB in the beginning and 1.6 GB in the end (delta: -1.5 GB). Peak memory consumption was 683.0 MB. Max. memory is 7.1 GB. [2020-07-10 20:37:19,358 INFO L168 Benchmark]: CDTParser took 0.27 ms. Allocated memory is still 138.9 MB. Free memory was 122.4 MB in the beginning and 122.2 MB in the end (delta: 209.9 kB). Peak memory consumption was 209.9 kB. Max. memory is 7.1 GB. [2020-07-10 20:37:19,359 INFO L168 Benchmark]: CACSL2BoogieTranslator took 365.63 ms. Allocated memory is still 138.9 MB. Free memory was 103.0 MB in the beginning and 89.9 MB in the end (delta: 13.1 MB). Peak memory consumption was 13.1 MB. Max. memory is 7.1 GB. [2020-07-10 20:37:19,359 INFO L168 Benchmark]: Boogie Preprocessor took 136.65 ms. Allocated memory was 138.9 MB in the beginning and 202.9 MB in the end (delta: 64.0 MB). Free memory was 89.9 MB in the beginning and 180.4 MB in the end (delta: -90.5 MB). Peak memory consumption was 13.9 MB. Max. memory is 7.1 GB. [2020-07-10 20:37:19,359 INFO L168 Benchmark]: RCFGBuilder took 839.41 ms. Allocated memory is still 202.9 MB. Free memory was 179.8 MB in the beginning and 125.2 MB in the end (delta: 54.6 MB). Peak memory consumption was 54.6 MB. Max. memory is 7.1 GB. [2020-07-10 20:37:19,360 INFO L168 Benchmark]: TraceAbstraction took 675769.57 ms. Allocated memory was 202.9 MB in the beginning and 2.3 GB in the end (delta: 2.1 GB). Free memory was 124.6 MB in the beginning and 1.6 GB in the end (delta: -1.4 GB). Peak memory consumption was 640.4 MB. Max. memory is 7.1 GB. [2020-07-10 20:37:19,362 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.27 ms. Allocated memory is still 138.9 MB. Free memory was 122.4 MB in the beginning and 122.2 MB in the end (delta: 209.9 kB). Peak memory consumption was 209.9 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 365.63 ms. Allocated memory is still 138.9 MB. Free memory was 103.0 MB in the beginning and 89.9 MB in the end (delta: 13.1 MB). Peak memory consumption was 13.1 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 136.65 ms. Allocated memory was 138.9 MB in the beginning and 202.9 MB in the end (delta: 64.0 MB). Free memory was 89.9 MB in the beginning and 180.4 MB in the end (delta: -90.5 MB). Peak memory consumption was 13.9 MB. Max. memory is 7.1 GB. * RCFGBuilder took 839.41 ms. Allocated memory is still 202.9 MB. Free memory was 179.8 MB in the beginning and 125.2 MB in the end (delta: 54.6 MB). Peak memory consumption was 54.6 MB. Max. memory is 7.1 GB. * TraceAbstraction took 675769.57 ms. Allocated memory was 202.9 MB in the beginning and 2.3 GB in the end (delta: 2.1 GB). Free memory was 124.6 MB in the beginning and 1.6 GB in the end (delta: -1.4 GB). Peak memory consumption was 640.4 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 9]: call of __VERIFIER_error() unreachable For all program executions holds that call of __VERIFIER_error() unreachable at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 288]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 230]: Loop Invariant Derived loop invariant: (((((((((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(p_dw_st))) || !(\old(p_num_write) <= 0)) || (((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && 2 <= p_dw_st)) || !(2 <= \old(c_dr_st))) || (((((((((((((\old(p_dw_st) == p_dw_st && c_num_read == \old(c_num_read)) && p_num_write <= c_num_read) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && q_write_ev == \old(q_write_ev)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read))) && ((((!(1 == \old(p_dw_pc)) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || ((((((((((((c_num_read == \old(c_num_read) && \old(p_dw_st) == p_dw_st) && p_num_write == \old(p_num_write)) && 1 == p_dw_pc) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(2 <= \old(c_dr_st)))) && (((((((((((((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st) || (((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(1 == \old(p_dw_pc))) || !(2 <= \old(p_dw_st))) || !(0 == \old(q_free))) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_num_write) <= \old(c_num_read) + 1)) || !(1 == p_dw_i)) || \old(q_read_ev) == 1) || !(\old(p_last_write) <= \old(q_buf_0))) || !(\old(c_num_read) + 1 <= \old(p_num_write))) || !(\old(q_buf_0) <= \old(p_last_write)))) && (((((((((((((!(0 == \old(p_dw_st)) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_num_write) <= 0)) || c_dr_pc <= 0) || !(0 <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(\old(c_dr_pc) <= 0)) || !(2 <= \old(c_dr_st))) || 1 == q_free) || !(\old(p_num_write) <= \old(c_num_read)))) && (((((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(p_dw_st))) || !(\old(p_num_write) <= 0)) || (((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || !(\old(c_num_read) <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && 2 <= p_dw_st)) || !(\old(c_dr_pc) <= 0)) || ((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && p_num_write == \old(p_num_write)) && 0 == p_dw_st) && !(p_dw_pc == q_free)) && 1 == q_free)) || (((((((((((((\old(p_dw_st) == p_dw_st && c_num_read == \old(c_num_read)) && p_num_write <= c_num_read) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && q_write_ev == \old(q_write_ev)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read)))) && (((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(q_free))) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) + 1 <= \old(p_num_write))) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == q_free) && 2 <= p_dw_st)) || ((((((((((((\old(p_dw_st) == p_dw_st && p_num_write == \old(p_num_write)) && p_num_write <= c_num_read + 1) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_num_read + 1 <= p_num_write) && a_t == \old(a_t)) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(1 == \old(p_dw_pc))) || !(2 <= \old(p_dw_st))) || !(\old(p_num_write) <= \old(c_num_read) + 1)) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || !(\old(q_buf_0) <= \old(p_last_write)))) && ((((((((((((((!(0 == \old(p_dw_st)) || ((((((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(\old(c_last_read) < \old(p_last_write) + 1)) || (((2 <= c_dr_st && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || (((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_last_write) <= \old(c_last_read))) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(p_dw_pc))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(q_read_ev) == 1) || !(\old(p_last_write) <= \old(q_buf_0))) || !(2 <= \old(c_dr_st))) || !(\old(q_buf_0) <= \old(p_last_write))) || !(\old(p_num_write) <= \old(c_num_read))) - InvariantResult [Line: 138]: Loop Invariant Derived loop invariant: (((((((((!(1 == p_dw_pc) || 1 == \old(c_dr_pc)) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(\old(c_num_read) + 1 <= p_num_write)) || !(0 == \old(q_free))) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || !(p_num_write <= \old(c_num_read) + 1)) && ((((((((\old(q_free) == p_dw_pc || !(0 == \old(p_dw_st))) || !(1 == \old(q_free))) || !(p_num_write <= \old(c_num_read))) || !(1 == p_dw_i)) || !(\old(c_dr_pc) <= 0)) || !(\old(c_num_read) <= p_num_write)) || !(p_num_write <= 0)) || !(0 <= p_num_write))) && ((((((((!(1 == p_dw_pc) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(\old(c_num_read) + 1 <= p_num_write)) || !(0 == \old(q_free))) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || !(p_num_write <= \old(c_num_read) + 1)) || ((((((((\old(p_dw_st) == p_dw_st && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && a_t == \old(a_t)) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(q_free) == q_free)) - InvariantResult [Line: 95]: Loop Invariant Derived loop invariant: (((((((((((((((((((((\old(p_dw_st) == p_dw_st && 0 == q_free) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && c_dr_st == \old(c_dr_st)) || !(\old(p_num_write) <= c_num_read)) || !(c_last_read < \old(p_last_write) + 1)) || !(1 == \old(p_dw_pc))) || !(1 == \old(q_free))) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || 1 == q_read_ev) || !(2 <= \old(c_dr_st))) || !(\old(p_last_write) <= c_last_read)) || ((((((0 == q_free && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_dw_st <= 0) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i)) || !(\old(q_buf_0) <= \old(p_last_write))) || (((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write)) && ((((((((((((((((!(1 == p_dw_pc) && 0 == q_free) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && \old(p_num_write) + 1 <= p_num_write) || !(1 == \old(q_free))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || (((((\old(p_dw_st) == p_dw_st && !(1 == p_dw_pc)) && 0 == q_free) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_dr_st == \old(c_dr_st))) || \old(p_dw_pc) == \old(q_free)) || ((((((((c_num_read <= p_num_write && \old(p_dw_st) == p_dw_st) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_dr_st == \old(c_dr_st)) && p_num_write <= 0) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(2 <= \old(c_dr_st))) || !(\old(p_num_write) <= 0)) || (((((!(1 == p_dw_pc) && 0 == q_free) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_dw_st <= 0) && p_last_write <= q_buf_0)) || !(0 <= \old(p_num_write)))) && (((((((((!(c_dr_pc <= 0) || !(1 == \old(q_free))) || ((((((((\old(p_dw_st) == p_dw_st && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_dr_st == \old(c_dr_st)) && p_num_write <= 0) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((((!(1 == p_dw_pc) && 0 == q_free) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write)) || !(\old(p_num_write) <= 0)) || !(0 <= \old(p_num_write))) - InvariantResult [Line: 303]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 138]: Loop Invariant Derived loop invariant: (((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && a_t == \old(a_t)) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && 0 == p_dw_st) && 1 == q_free) || \old(q_free) == p_dw_pc) || !(0 == \old(p_dw_st))) || !(1 == \old(q_free))) || !(p_num_write <= \old(c_num_read))) || !(1 == p_dw_i)) || !(\old(c_dr_pc) <= 0)) || !(\old(c_num_read) <= p_num_write)) || !(p_num_write <= 0)) || !(0 <= p_num_write)) && (((((((((!(1 == p_dw_pc) || ((((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && a <= p_last_write) && c_last_read < p_last_write + 1) && p_last_write <= a) && p_last_write <= c_last_read)) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || (((((((((\old(p_dw_st) == p_dw_st && !(c_dr_pc == 1)) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && a_t == \old(a_t)) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(q_free) == q_free)) || !(\old(c_num_read) + 1 <= p_num_write)) || !(0 == \old(q_free))) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || !(p_num_write <= \old(c_num_read) + 1)) - InvariantResult [Line: 31]: Loop Invariant Derived loop invariant: ((((((((((!(1 == p_dw_pc) || !(p_last_write <= c_last_read)) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(1 == p_dw_i)) || !(p_num_write <= c_num_read)) || !(c_num_read <= p_num_write)) || 1 <= __retres1) || !(c_last_read < p_last_write + 1)) || !(1 == q_free)) || !(1 == q_read_ev)) || !(2 <= p_dw_st) - InvariantResult [Line: 310]: Loop Invariant Derived loop invariant: (((((((((((((((2 <= c_dr_st && 1 == p_dw_pc) && 2 <= p_dw_st) || !(0 == \old(p_dw_st))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(\old(p_num_write) <= 0)) || (((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || ((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && p_num_write == \old(p_num_write)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && 0 == p_dw_st) && \old(p_dw_pc) == p_dw_pc) && 1 == q_free) && q_write_ev == \old(q_write_ev))) || \old(p_dw_pc) == \old(q_free)) || ((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(\old(c_dr_pc) <= 0)) || ((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && p_num_write == \old(p_num_write)) && 0 == p_dw_st) && !(p_dw_pc == q_free)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read)) - InvariantResult [Line: 237]: Loop Invariant Derived loop invariant: (((((((((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(p_dw_st))) || !(\old(p_num_write) <= 0)) || (((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && 2 <= p_dw_st)) || !(2 <= \old(c_dr_st))) || (((((((((((((\old(p_dw_st) == p_dw_st && c_num_read == \old(c_num_read)) && p_num_write <= c_num_read) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && q_write_ev == \old(q_write_ev)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read))) && ((((!(1 == \old(p_dw_pc)) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || ((((((((((((c_num_read == \old(c_num_read) && \old(p_dw_st) == p_dw_st) && p_num_write == \old(p_num_write)) && 1 == p_dw_pc) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(2 <= \old(c_dr_st)))) && (((((((((((((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st) || (((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(1 == \old(p_dw_pc))) || !(2 <= \old(p_dw_st))) || !(0 == \old(q_free))) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_num_write) <= \old(c_num_read) + 1)) || !(1 == p_dw_i)) || \old(q_read_ev) == 1) || !(\old(p_last_write) <= \old(q_buf_0))) || !(\old(c_num_read) + 1 <= \old(p_num_write))) || !(\old(q_buf_0) <= \old(p_last_write)))) && (((((((((((((!(0 == \old(p_dw_st)) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_num_write) <= 0)) || c_dr_pc <= 0) || !(0 <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(\old(c_dr_pc) <= 0)) || !(2 <= \old(c_dr_st))) || 1 == q_free) || !(\old(p_num_write) <= \old(c_num_read)))) && (((((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(p_dw_st))) || !(\old(p_num_write) <= 0)) || (((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || !(\old(c_num_read) <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && 2 <= p_dw_st)) || !(\old(c_dr_pc) <= 0)) || ((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && p_num_write == \old(p_num_write)) && 0 == p_dw_st) && !(p_dw_pc == q_free)) && 1 == q_free)) || (((((((((((((\old(p_dw_st) == p_dw_st && c_num_read == \old(c_num_read)) && p_num_write <= c_num_read) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && q_write_ev == \old(q_write_ev)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read)))) && (((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(q_free))) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) + 1 <= \old(p_num_write))) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == q_free) && 2 <= p_dw_st)) || ((((((((((((\old(p_dw_st) == p_dw_st && p_num_write == \old(p_num_write)) && p_num_write <= c_num_read + 1) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_num_read + 1 <= p_num_write) && a_t == \old(a_t)) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(1 == \old(p_dw_pc))) || !(2 <= \old(p_dw_st))) || !(\old(p_num_write) <= \old(c_num_read) + 1)) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || !(\old(q_buf_0) <= \old(p_last_write)))) && ((((((((((((((!(0 == \old(p_dw_st)) || ((((((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(\old(c_last_read) < \old(p_last_write) + 1)) || (((2 <= c_dr_st && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || (((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_last_write) <= \old(c_last_read))) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(p_dw_pc))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(q_read_ev) == 1) || !(\old(p_last_write) <= \old(q_buf_0))) || !(2 <= \old(c_dr_st))) || !(\old(q_buf_0) <= \old(p_last_write))) || !(\old(p_num_write) <= \old(c_num_read))) - InvariantResult [Line: 91]: Loop Invariant Derived loop invariant: (((((((((((((((2 <= c_dr_st && 1 == p_dw_pc) && 2 <= p_dw_st) || !(\old(p_num_write) <= c_num_read)) || !(c_last_read < \old(p_last_write) + 1)) || ((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(1 == \old(p_dw_pc))) || !(1 == \old(q_free))) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || 1 == q_read_ev) || !(2 <= \old(c_dr_st))) || !(\old(p_last_write) <= c_last_read)) || !(\old(q_buf_0) <= \old(p_last_write))) && (((((((((((2 <= c_dr_st && 1 == p_dw_pc) && 2 <= p_dw_st) || !(1 == \old(q_free))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(2 <= \old(c_dr_st))) || !(\old(p_num_write) <= 0)) || ((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write)))) && ((((((((!(c_dr_pc <= 0) || !(1 == \old(q_free))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(\old(p_num_write) <= 0)) || ((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) - InvariantResult [Line: 50]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 135]: Loop Invariant Derived loop invariant: (((((((((\old(q_free) == p_dw_pc || ((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && 0 == p_dw_st) && 1 == q_free)) || !(0 == \old(p_dw_st))) || !(1 == \old(q_free))) || !(p_num_write <= \old(c_num_read))) || !(1 == p_dw_i)) || !(\old(c_dr_pc) <= 0)) || !(\old(c_num_read) <= p_num_write)) || !(p_num_write <= 0)) || !(0 <= p_num_write)) && (((((((((!(1 == p_dw_pc) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(\old(c_num_read) + 1 <= p_num_write)) || !(0 == \old(q_free))) || !(2 <= \old(p_dw_st))) || (((2 <= c_dr_st && !(1 == q_read_ev)) && 1 == q_free) && 2 <= p_dw_st)) || (((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && a <= p_last_write) && c_last_read < p_last_write + 1) && p_last_write <= a) && p_last_write <= c_last_read)) || !(1 == p_dw_i)) || !(p_num_write <= \old(c_num_read) + 1)) - InvariantResult [Line: 213]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 95]: Loop Invariant Derived loop invariant: (((((((((!(c_dr_pc <= 0) || !(1 == \old(q_free))) || ((((((((\old(p_dw_st) == p_dw_st && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_dr_st == \old(c_dr_st)) && p_num_write <= 0) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(\old(p_num_write) <= 0)) || !(0 <= \old(p_num_write))) && ((((((((!(1 == \old(q_free)) || ((((((((\old(p_dw_st) == p_dw_st && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_dr_st == \old(c_dr_st)) && p_num_write <= 0) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(2 <= \old(c_dr_st))) || !(\old(p_num_write) <= 0)) || !(0 <= \old(p_num_write)))) && (((((((((((!(1 == \old(p_dw_pc)) || !(1 == \old(q_free))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || ((((((((\old(p_dw_st) == p_dw_st && q_buf_0 <= p_last_write) && q_buf_0 == \old(q_buf_0)) && p_num_write == \old(p_num_write)) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && c_dr_st == \old(c_dr_st)) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || 1 == q_read_ev) || !(c_last_read < \old(p_last_write) + 1)) || !(2 <= \old(c_dr_st))) || !(\old(p_last_write) <= c_last_read)) || !(\old(q_buf_0) <= \old(p_last_write))) - ProcedureContractResult [Line: 210]: Procedure Contract for exists_runnable_thread Derived contract for procedure exists_runnable_thread: 1 - ProcedureContractResult [Line: 192]: Procedure Contract for init_threads Derived contract for procedure init_threads: ((((((((!(c_dr_pc <= 0) || !(0 == \old(p_dw_st))) || !(1 == p_dw_i)) || !(p_num_write <= c_num_read)) || !(c_num_read <= p_num_write)) || 0 == p_dw_st) || p_dw_pc == q_free) || !(1 == q_free)) || !(p_num_write <= 0)) || !(0 <= p_num_write) - ProcedureContractResult [Line: 349]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 91]: Procedure Contract for do_write_p Derived contract for procedure do_write_p: (((((((((((((((2 <= c_dr_st && 1 == p_dw_pc) && 2 <= p_dw_st) || !(\old(p_num_write) <= c_num_read)) || !(c_last_read < \old(p_last_write) + 1)) || ((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(1 == \old(p_dw_pc))) || !(1 == \old(q_free))) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || 1 == q_read_ev) || !(2 <= \old(c_dr_st))) || !(\old(p_last_write) <= c_last_read)) || !(\old(q_buf_0) <= \old(p_last_write))) && (((((((((((2 <= c_dr_st && 1 == p_dw_pc) && 2 <= p_dw_st) || !(1 == \old(q_free))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(2 <= \old(c_dr_st))) || !(\old(p_num_write) <= 0)) || ((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write)))) && ((((((((!(c_dr_pc <= 0) || !(1 == \old(q_free))) || !(\old(p_num_write) <= c_num_read)) || !(c_num_read <= \old(p_num_write))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(\old(p_num_write) <= 0)) || ((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) - ProcedureContractResult [Line: 5]: Procedure Contract for error Derived contract for procedure error: 1 - ProcedureContractResult [Line: 66]: Procedure Contract for immediate_notify_threads Derived contract for procedure immediate_notify_threads: ((((((((((!(1 == p_dw_pc) || !(p_last_write <= c_last_read)) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || !(p_num_write <= c_num_read)) || !(c_num_read <= p_num_write)) || 0 == p_dw_st) || !(c_last_read < p_last_write + 1)) || !(1 == q_free)) || !(1 == q_read_ev) - ProcedureContractResult [Line: 230]: Procedure Contract for eval Derived contract for procedure eval: (((((((((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(p_dw_st))) || !(\old(p_num_write) <= 0)) || (((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && 2 <= p_dw_st)) || !(2 <= \old(c_dr_st))) || (((((((((((((\old(p_dw_st) == p_dw_st && c_num_read == \old(c_num_read)) && p_num_write <= c_num_read) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && q_write_ev == \old(q_write_ev)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read))) && ((((!(1 == \old(p_dw_pc)) || !(2 <= \old(p_dw_st))) || !(1 == p_dw_i)) || ((((((((((((c_num_read == \old(c_num_read) && \old(p_dw_st) == p_dw_st) && p_num_write == \old(p_num_write)) && 1 == p_dw_pc) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || !(2 <= \old(c_dr_st)))) && (((((((((((((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st) || (((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(1 == \old(p_dw_pc))) || !(2 <= \old(p_dw_st))) || !(0 == \old(q_free))) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_num_write) <= \old(c_num_read) + 1)) || !(1 == p_dw_i)) || \old(q_read_ev) == 1) || !(\old(p_last_write) <= \old(q_buf_0))) || !(\old(c_num_read) + 1 <= \old(p_num_write))) || !(\old(q_buf_0) <= \old(p_last_write)))) && (((((((((((((!(0 == \old(p_dw_st)) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_num_write) <= 0)) || c_dr_pc <= 0) || !(0 <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || !(\old(c_dr_pc) <= 0)) || !(2 <= \old(c_dr_st))) || 1 == q_free) || !(\old(p_num_write) <= \old(c_num_read)))) && (((((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(p_dw_st))) || !(\old(p_num_write) <= 0)) || (((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && p_num_write <= \old(p_num_write) + 1) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && \old(p_num_write) + 1 <= p_num_write) && 2 <= p_dw_st)) || !(0 <= \old(p_num_write))) || !(\old(c_num_read) <= \old(p_num_write))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(p_dw_pc) == \old(q_free)) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && 2 <= p_dw_st)) || !(\old(c_dr_pc) <= 0)) || ((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && p_num_write == \old(p_num_write)) && 0 == p_dw_st) && !(p_dw_pc == q_free)) && 1 == q_free)) || (((((((((((((\old(p_dw_st) == p_dw_st && c_num_read == \old(c_num_read)) && p_num_write <= c_num_read) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && c_num_read <= p_num_write) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && a_t == \old(a_t)) && \old(q_read_ev) == q_read_ev) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && q_write_ev == \old(q_write_ev)) && 1 == q_free)) || !(\old(p_num_write) <= \old(c_num_read)))) && (((((((((((((((((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 1 == p_dw_i) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read) || !(0 == \old(q_free))) || ((((2 <= c_dr_st && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(c_num_read) + 1 <= \old(p_num_write))) || (((2 <= c_dr_st && 1 == p_dw_pc) && 1 == q_free) && 2 <= p_dw_st)) || ((((((((((((\old(p_dw_st) == p_dw_st && p_num_write == \old(p_num_write)) && p_num_write <= c_num_read + 1) && c_last_read == \old(c_last_read)) && c_dr_st == \old(c_dr_st)) && p_last_write == \old(p_last_write)) && q_buf_0 == \old(q_buf_0)) && c_num_read + 1 <= p_num_write) && a_t == \old(a_t)) && c_dr_pc == \old(c_dr_pc)) && \old(p_dw_pc) == p_dw_pc) && \old(q_free) == q_free) && q_write_ev == \old(q_write_ev))) || ((((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && 1 == p_dw_i) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(1 == \old(p_dw_pc))) || !(2 <= \old(p_dw_st))) || !(\old(p_num_write) <= \old(c_num_read) + 1)) || !(1 == p_dw_i)) || !(\old(p_last_write) <= \old(q_buf_0))) || !(\old(q_buf_0) <= \old(p_last_write)))) && ((((((((((((((!(0 == \old(p_dw_st)) || ((((((((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && 1 == p_dw_pc) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && c_last_read < p_last_write + 1) && p_last_write <= c_last_read)) || !(\old(c_last_read) < \old(p_last_write) + 1)) || (((2 <= c_dr_st && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || (((((((0 == q_free && q_buf_0 <= p_last_write) && p_last_write <= q_buf_0) && c_num_read + 1 <= p_num_write) && p_num_write <= c_num_read + 1) && 1 == p_dw_pc) && !(1 == q_read_ev)) && 2 <= p_dw_st)) || !(\old(p_last_write) <= \old(c_last_read))) || !(\old(c_num_read) <= \old(p_num_write))) || !(1 == \old(p_dw_pc))) || !(1 == \old(q_free))) || !(1 == p_dw_i)) || \old(q_read_ev) == 1) || !(\old(p_last_write) <= \old(q_buf_0))) || !(2 <= \old(c_dr_st))) || !(\old(q_buf_0) <= \old(p_last_write))) || !(\old(p_num_write) <= \old(c_num_read))) - ProcedureContractResult [Line: 284]: Procedure Contract for stop_simulation Derived contract for procedure stop_simulation: 1 - ProcedureContractResult [Line: 47]: Procedure Contract for is_do_read_c_triggered Derived contract for procedure is_do_read_c_triggered: 1 - ProcedureContractResult [Line: 303]: Procedure Contract for start_simulation Derived contract for procedure start_simulation: 1 - ProcedureContractResult [Line: 28]: Procedure Contract for is_do_write_p_triggered Derived contract for procedure is_do_write_p_triggered: ((((((((((!(1 == p_dw_pc) || !(p_last_write <= c_last_read)) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(1 == p_dw_i)) || !(p_num_write <= c_num_read)) || !(c_num_read <= p_num_write)) || !(c_last_read < p_last_write + 1)) || (1 <= \result && 1 <= __retres1)) || !(1 == q_free)) || !(1 == q_read_ev)) || !(2 <= p_dw_st) - ProcedureContractResult [Line: 135]: Procedure Contract for do_read_c Derived contract for procedure do_read_c: (((((((((\old(q_free) == p_dw_pc || ((((c_num_read <= p_num_write && p_num_write <= c_num_read) && 2 <= c_dr_st) && 0 == p_dw_st) && 1 == q_free)) || !(0 == \old(p_dw_st))) || !(1 == \old(q_free))) || !(p_num_write <= \old(c_num_read))) || !(1 == p_dw_i)) || !(\old(c_dr_pc) <= 0)) || !(\old(c_num_read) <= p_num_write)) || !(p_num_write <= 0)) || !(0 <= p_num_write)) && (((((((((!(1 == p_dw_pc) || !(p_last_write <= q_buf_0)) || !(q_buf_0 <= p_last_write)) || !(\old(c_num_read) + 1 <= p_num_write)) || !(0 == \old(q_free))) || !(2 <= \old(p_dw_st))) || (((2 <= c_dr_st && !(1 == q_read_ev)) && 1 == q_free) && 2 <= p_dw_st)) || (((((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && 2 <= c_dr_st) && 0 == p_dw_st) && !(1 == q_read_ev)) && 1 == q_free) && a <= p_last_write) && c_last_read < p_last_write + 1) && p_last_write <= a) && p_last_write <= c_last_read)) || !(1 == p_dw_i)) || !(p_num_write <= \old(c_num_read) + 1)) - ProcedureContractResult [Line: 332]: Procedure Contract for init_model Derived contract for procedure init_model: (((((((((1 == \old(p_dw_pc) || !(\old(c_num_read) <= \old(p_num_write))) || !(0 == p_dw_st)) || !(0 == \old(q_free))) || \old(q_read_ev) == 1) || ((((((p_num_write <= c_num_read && c_num_read <= p_num_write) && p_num_write == \old(p_num_write)) && 1 == p_dw_i) && c_dr_pc <= 0) && !(p_dw_pc == q_free)) && 1 == q_free)) || 1 == \old(p_dw_i)) || !(\old(c_dr_pc) <= 0)) || !(\old(p_num_write) <= 0)) || !(0 <= \old(p_num_write))) || !(\old(p_num_write) <= \old(c_num_read)) - StatisticsResult: Ultimate Automizer benchmark data CFG has 15 procedures, 182 locations, 1 error locations. Started 1 CEGAR loops. VerificationResult: SAFE, OverallTime: 554.7s, OverallIterations: 12, TraceHistogramMax: 3, AutomataDifference: 293.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 120.4s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 3142 SDtfs, 7987 SDslu, 3067 SDs, 0 SdLazy, 10745 SolverSat, 1795 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 21.2s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 515 GetRequests, 289 SyntacticMatches, 1 SemanticMatches, 225 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1329 ImplicationChecksByTransitivity, 7.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=4321occurred in iteration=8, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 181.8s AutomataMinimizationTime, 12 MinimizatonAttempts, 2997 StatesRemovedByMinimization, 11 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 182 LocationsWithAnnotation, 20555 PreInvPairs, 23610 NumberOfFragments, 31208 HoareAnnotationTreeSize, 20555 FomulaSimplifications, 40448460 FormulaSimplificationTreeSizeReduction, 20.8s HoareSimplificationTime, 182 FomulaSimplificationsInter, 299963 FormulaSimplificationTreeSizeReductionInter, 85.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...