Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_clearance, may_enter_lab.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- If a staff member is assigned to the clinical trial, then that staff member needs supervisor review.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Ava is assigned to the clinical trial.
Negative facts:
- none

Target atom: needs_supervisor_review::Ava.
Target statement: Ava needs supervisor review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- If a staff member is assigned to the clinical trial, then that staff member needs supervisor review.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Ava is assigned to the clinical trial.
Negative facts:
- none

Target atom: needs_supervisor_review::Ava.
Target statement: Ava needs supervisor review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Elena has completed safety training.
Negative facts:
- Cora does not has security clearance.

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_clearance::Cora.
Target statement: Cora has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_clearance.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- Cora does not has security clearance.

Agent B report:
Positive facts:
- Elena has completed safety training.
Negative facts:
- none

Target atom: has_clearance::Cora.
Target statement: Cora has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Elena has completed safety training.
Negative facts:
- Cora does not has security clearance.

Target atom: has_clearance::Cora.
Target statement: Cora has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Farid has completed safety training.
Negative facts:
- Dylan does not has security clearance.

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_clearance::Dylan.
Target statement: Dylan has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_clearance.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- Dylan does not has security clearance.

Agent B report:
Positive facts:
- Farid has completed safety training.
Negative facts:
- none

Target atom: has_clearance::Dylan.
Target statement: Dylan has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Farid has completed safety training.
Negative facts:
- Dylan does not has security clearance.

Target atom: has_clearance::Dylan.
Target statement: Dylan has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Ben has completed safety training.
Negative facts:
- Farid does not has security clearance.

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_clearance::Farid.
Target statement: Farid has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_clearance.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- Farid does not has security clearance.

Agent B report:
Positive facts:
- Ben has completed safety training.
Negative facts:
- none

Target atom: has_clearance::Farid.
Target statement: Farid has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: assigned_to_trial, completed_training, has_clearance, may_enter_lab, needs_supervisor_review.

Predicate glossary:
- assigned_to_trial: is assigned to the clinical trial
- completed_training: has completed safety training
- has_clearance: has security clearance
- may_enter_lab: may enter Lab A
- needs_supervisor_review: needs supervisor review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Ben has completed safety training.
Negative facts:
- Farid does not has security clearance.

Target atom: has_clearance::Farid.
Target statement: Farid has security clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Reader F has an active membership.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader F.
Target statement: Reader F has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance.
Agent B open/incomplete predicates: has_active_membership, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader F has an active membership.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader F.
Target statement: Reader F has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader F has an active membership.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader F.
Target statement: Reader F has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Reader D has an active membership.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_special_request::Reader D.
Target statement: Reader D has a special request.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance, may_borrow_archive_item.
Agent B open/incomplete predicates: has_active_membership, has_special_request, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader D has an active membership.
Negative facts:
- none

Target atom: has_special_request::Reader D.
Target statement: Reader D has a special request.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader D has an active membership.
Negative facts:
- none

Target atom: has_special_request::Reader D.
Target statement: Reader D has a special request.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Reader A has an active membership.
Reader B has a special request.

has_active_membership::Reader A
has_special_request::Reader B

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Reader A has an active membership.
- Reader B has a special request.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader A.
Target statement: Reader A has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Reader A has an active membership.
Reader B has a special request.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance.
Agent B open/incomplete predicates: has_active_membership, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader A has an active membership.
- Reader B has a special request.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader A.
Target statement: Reader A has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Reader A has an active membership.
Reader B has a special request.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader A has an active membership.
- Reader B has a special request.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader A.
Target statement: Reader A has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Reader B has an active membership.
Reader C has a special request.

has_active_membership::Reader B
has_special_request::Reader C

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Reader B has an active membership.
- Reader C has a special request.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader B.
Target statement: Reader B has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Reader B has an active membership.
Reader C has a special request.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance.
Agent B open/incomplete predicates: has_active_membership, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader B has an active membership.
- Reader C has a special request.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader B.
Target statement: Reader B has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Reader B has an active membership.
Reader C has a special request.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader B has an active membership.
- Reader C has a special request.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader B.
Target statement: Reader B has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has a special request, then that reader needs librarian review.

Agent A report:
Positive facts:
- Reader E has an active membership.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: needs_librarian_review::Reader E.
Target statement: Reader E needs librarian review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance, may_borrow_archive_item.
Agent B open/incomplete predicates: has_active_membership, has_special_request, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has a special request, then that reader needs librarian review.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader E has an active membership.
Negative facts:
- none

Target atom: needs_librarian_review::Reader E.
Target statement: Reader E needs librarian review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has a special request, then that reader needs librarian review.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader E has an active membership.
Negative facts:
- none

Target atom: needs_librarian_review::Reader E.
Target statement: Reader E needs librarian review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Reader E has an active membership.
Reader E has borrowing clearance.

has_active_membership::Reader E
has_borrowing_clearance::Reader E
may_borrow_archive_item::Reader E

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has an active membership and has borrowing clearance, then that reader may borrow an archive item.

Agent A report:
Positive facts:
- Reader E has an active membership.
- Reader E has borrowing clearance.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: may_borrow_archive_item::Reader E.
Target statement: Reader E may borrow an archive item.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Reader E has an active membership.
Reader E has borrowing clearance.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance, may_borrow_archive_item.
Agent B open/incomplete predicates: has_active_membership, has_special_request, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has an active membership and has borrowing clearance, then that reader may borrow an archive item.

Agent A report:
Positive facts:
- Reader E has borrowing clearance.
Negative facts:
- none

Agent B report:
Positive facts:
- Reader E has an active membership.
Negative facts:
- none

Target atom: may_borrow_archive_item::Reader E.
Target statement: Reader E may borrow an archive item.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Reader E has an active membership.
Reader E has borrowing clearance.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has an active membership and has borrowing clearance, then that reader may borrow an archive item.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader E has an active membership.
- Reader E has borrowing clearance.
Negative facts:
- none

Target atom: may_borrow_archive_item::Reader E.
Target statement: Reader E may borrow an archive item.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Reader F has an active membership.
Reader F has borrowing clearance.

has_active_membership::Reader F
has_borrowing_clearance::Reader F
may_borrow_archive_item::Reader F

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has an active membership and has borrowing clearance, then that reader may borrow an archive item.

Agent A report:
Positive facts:
- Reader F has an active membership.
- Reader F has borrowing clearance.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: may_borrow_archive_item::Reader F.
Target statement: Reader F may borrow an archive item.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Reader F has an active membership.
Reader F has borrowing clearance.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance, may_borrow_archive_item.
Agent B open/incomplete predicates: has_active_membership, has_special_request, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has an active membership and has borrowing clearance, then that reader may borrow an archive item.

Agent A report:
Positive facts:
- Reader F has borrowing clearance.
Negative facts:
- none

Agent B report:
Positive facts:
- Reader F has an active membership.
Negative facts:
- none

Target atom: may_borrow_archive_item::Reader F.
Target statement: Reader F may borrow an archive item.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Reader F has an active membership.
Reader F has borrowing clearance.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has an active membership and has borrowing clearance, then that reader may borrow an archive item.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader F has an active membership.
- Reader F has borrowing clearance.
Negative facts:
- none

Target atom: may_borrow_archive_item::Reader F.
Target statement: Reader F may borrow an archive item.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

has_special_request::Reader A
needs_librarian_review::Reader A

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has a special request, then that reader needs librarian review.

Agent A report:
Positive facts:
- Reader A has a special request.
Negative facts:
- none

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: needs_librarian_review::Reader A.
Target statement: Reader A needs librarian review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance, may_borrow_archive_item.
Agent B open/incomplete predicates: has_active_membership, has_special_request, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has a special request, then that reader needs librarian review.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader A has a special request.
Negative facts:
- none

Target atom: needs_librarian_review::Reader A.
Target statement: Reader A needs librarian review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- If a reader has a special request, then that reader needs librarian review.

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader A has a special request.
Negative facts:
- none

Target atom: needs_librarian_review::Reader A.
Target statement: Reader A needs librarian review.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Reader D has an active membership.
Negative facts:
- Reader B does not has borrowing clearance.

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader B.
Target statement: Reader B has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance.
Agent B open/incomplete predicates: has_active_membership, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- Reader B does not has borrowing clearance.

Agent B report:
Positive facts:
- Reader D has an active membership.
Negative facts:
- none

Target atom: has_borrowing_clearance::Reader B.
Target statement: Reader B has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Open-world assumption

Instruction: Predicates are open by default. A target atom that is not explicitly stated, explicitly negated, or derivable from the rules is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: none.
Agent B open/incomplete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader D has an active membership.
Negative facts:
- Reader B does not has borrowing clearance.

Target atom: has_borrowing_clearance::Reader B.
Target statement: Reader B has borrowing clearance.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Closed-world assumption

Instruction: All predicates in the vocabulary are complete. After applying the rules, every unstated and underivable atom is false.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_active_membership, has_borrowing_clearance, has_special_request, may_borrow_archive_item, needs_librarian_review.
Agent B open/incomplete predicates: none.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- Reader F has an active membership.
Negative facts:
- Reader D does not has a special request.

Agent B report:
Positive facts:
- none
Negative facts:
- none

Target atom: has_special_request::Reader D.
Target statement: Reader D has a special request.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.


Locally closed-world assumption

Instruction: Only the predicates listed as complete are closed. After applying the rules, an unstated and underivable atom whose predicate is complete is false; an unstated and underivable atom whose predicate is not complete is unknown.

Prompt:
You are the coordinator in a multi-agent workflow. Two source agents reported evidence from different systems. Your job is to answer the target statement while preserving source-scoped closure contracts.
Return exactly one JSON object with keys truth_value, source_used, closure_handling, and rationale.

Allowed values:
- truth_value: true, false, unknown.
- source_used: agent_a, agent_b, both, neither.
- closure_handling: entailed_or_explicit, explicit_negative, closed_absence, open_absence.

Source attribution rule:
- Use agent_a when an Agent A complete-source fact, negative fact, or closed absence determines the answer.
- Use agent_b when an Agent B open-source fact, negative fact, or open absence determines the answer.
- Use both when a rule-derived answer depends on facts from both source agents.
- Use neither only if no source report or source-scoped absence is relevant.

Source-scoped closure contract:
- Agent A is an authoritative system of record only for the listed complete predicates.
- For Agent A complete predicates, after applying rules, absence of a report means false.
- Agent B is an incomplete/open source. Absence from Agent B never means false by itself.
- Do not transfer Agent A completeness to Agent B-only/open predicates.
- Do not ignore Agent A completeness for predicates it explicitly covers.

Agent A complete predicates: has_borrowing_clearance, may_borrow_archive_item.
Agent B open/incomplete predicates: has_active_membership, has_special_request, needs_librarian_review.

Predicate glossary:
- has_active_membership: has an active membership
- has_borrowing_clearance: has borrowing clearance
- has_special_request: has a special request
- may_borrow_archive_item: may borrow an archive item
- needs_librarian_review: needs librarian review

Coordinator policy rules:
- none

Agent A report:
Positive facts:
- none
Negative facts:
- none

Agent B report:
Positive facts:
- Reader F has an active membership.
Negative facts:
- Reader D does not has a special request.

Target atom: has_special_request::Reader D.
Target statement: Reader D has a special request.

Decide the truth value, identify which source justified the decision, and classify how closure was handled.