Skip to content

Structural Rules

thomasGodfrey edited this page Jun 7, 2024 · 1 revision
  • We are assuming here that all games start with a proposal of a model, ignoring the prior potential moves of proposing requirements before having a model. We therefore assume that a set of requirements r1…rn already exist in the theory store.
  1. Proponent P moves first with ProposeModel(m, r) which starts the dialogue

  2. After ProposeModel(m, r):

  • Proponent P can:
    • 2.1) ProposeExperiment(m, e, r) - support the validity of model m with respect to requirement r by supplying experiment e
    • 2.2) SupportModel(m, t) - support the validity of model m through theory t
  • Opponent O can:
    • 2.3) CounterModel(m, e, r) - provide a counter-experiment e that disproves that model m satisfies requirement r
    • 2.4) AttackModel(m, t) - claim that model m is not valid due to some theory t
    • 2.5) RequestEvidence(m, r) - request that the proponent supplies further evidence for how model m satisfies requirement r
  1. After ProposeExperiment(m, e, r):
  • Proponent P can:
    • 3.1) ProposeExperiment(m, e’, r) - support the validity of model m with respect to requirement r by supplying additional experiment e’
    • 3.2) SupportExperiment(e, t) - Provide theory t in support of the validity of experiment e
    • 3.3) [iff there are no undefended attacks on m] StudyDone() - Declare the model as valid until some new counter-evidence is raised by an opponent
  • Opponent O can:
    • 3.4) AttackExperiment(e, t) - claim that the proposed experiment e is not valid due to some theory t
  1. After AttackExperiment(e, t):

4i) If Proponent P performed AttackExperiment(e, t):

  • Proponent P can:
    • [iff there are no undefended attacks on m] StudyDone() - Declare the model as valid until some new counter-evidence is raised by an opponent
  • Opponent O can:
    • RetractExperiment(e) - concede by retracting the experiment e
    • DefendExperiment(e, t, t’) - claim that experiment e is in fact valid despite theory t due to some counter-theory t’

4ii) If Opponent O performed AttackExperiment(e, t):

  • Proponent P can:
    • DefendExperiment(e, t, t’) - claim that experiment e is in fact valid despite theory t due to some counter-theory t’
    • RetractExperiment(e) - resolve that e is not valid and so remove it from the theory
  • Opponent O can:
    • N/A
  1. After CounterModel(m, e, r):
  • Proponent P can:
    • AttackExperiment(e, t) - claim that the opponent’s counter-experiment e is not valid due to some theory t
    • ReviseRequirement(m, r, r’, e) - concede that the model m does not satisfy requirement r because r is poorly worded. As such, replace r with r’ and provide e as supporting experiment
    • ReplaceModel(m, m’, r) - Concede that model m is not valid and instead propose a new model m’ that satisfies r
  • Opponent O can:
    • SupportExperiment(e, t) - Support the counter-example e with theory t
  1. After AttackModel(m, t):
  • Proponent P can:
    • DefendModel(m, t, t’) - Defend the model m by stating that the theory t used to attack the model is not valid due to alternative theory t’
    • ReplaceModel(m, m’, r) - Concede that model m is not valid and instead propose a new model m’ that satisfies r
  • Opponent O can:
    • N/A
  1. After ReviseRequirement(m, r, r’, e):
  • Proponent P can:
    • [iff there are no undefended attacks on m] StudyDone() - Declare the model as valid until some new counter-evidence is raised by an opponent
  • Opponent O can:
    • AttackRequirement(r’, t) - Attack the new requirement r’ on the basis of theory t
    • AttackExperiment(e, t) - claim that the proposed experiment e is not valid due to some theory t
  1. After RetractExperiment(e):
  • Proponent P must:
    • StudyDone() - Declare the model as valid until some new counter-evidence is raised by an opponent
  • Opponent O can:
    • N/A
  1. After DefendExperiment(e, t, t’):

9i) If Proponent P performed DefendExperiment(e, t, t’):

  • Proponent P can:
    • [iff there are no undefended attacks on m] StudyDone() - Declare the model as valid until some new counter-evidence is raised by an opponent
  • Opponent O can:
    • AttackTheory(t’, t’’) ?

9ii) If Opponent O performed DefendExperiment(e, t, t’):

  • Proponent P can:
    • AttackTheory(t’, t’’) ?
  • Opponent O can:
    • N/A
  1. After ReplaceModel(m, m’, r):
  • Proponent P can:
    • ProposeExperiment(m’, e, r) - Support the validity of model m w.r.t requirement r by providing an experiment e
  • Opponent O can:
    • CounterModel(m’, e, r) - provide a counter-experiment e that disproves that model m’ satisfies requirement r
    • AttackModel(m’, t) - claim that model m’ is not valid due to some theory t
  1. After SupportExperiment(e, t):

11i) If Proponent P performed SupportExperiment(e, t):

  • Proponent P must:
    • StudyDone() - Declare the model as valid until some new counter-evidence is raised by an opponent
  • Opponent O can:
    • AttackTheory(t’, t’’) ?

11ii) If Opponent O performed SupportExperiment(e, t):

  • Proponent P can:
    • AttackTheory(t’, t’’) ?
  • Opponent O can:
    • N/A
  1. After StudyDone():
  • Proponent P can:
    • N/A
  • Opponent O can:
    • AttackRequirement(r t) - Attack the requirement r on the basis of theory t
    • AttackModel(m, t) - claim that model m is not valid due to some theory t
    • CounterModel(m, e, r) - provide a counter-experiment e that disproves that model m satisfies requirement r
    • AttackTheory(t’, t’’) ?
    • AttackExperiment(e, t) - claim that experiment e is not valid due to some theory t

Clone this wiki locally