80 likes | 162 Views
Learn what each role needs to provide to define and run competitions. Understand the protocols for refutation and strengthening outcomes. Get insights into the functions of basic objects used by all. Dive into the roles of GameProvider, Scholar, and Administrator in competition management.
E N D
Overview • What needs to be provided • What GameProvider needs to provide to define a competition. • What each Scholar needs to provide to participate in competitions. • What Administrator needs to provide to run a competition. • Each role adds to the functionality of the basic objects.
Objects used by all • Game • Scholar • Problem • Solution • Niche • Hypothesis • RefutationProtocol • StrengtheningProtocol • RefutationOutcome = Refutation | Support. • StrengtheningOutcome = Hypothesis | Refutation.
GameProvider • cd for Problem (+ DemeterF defined interface) • Boolean semanticCheck() • Boolean conforms(Hypothesis) • cd for Solution • Boolean correct(Problem) • cd for Niche • cd for Hypothesis • Boolean legal(Niche) • Boolean refuted(RefutationProtocol) • = <kind> Kind • Kind : EA | AE. • cd for RefutationProtocol(Hypothesis) = • <provided> Problem • <solved> Solution • cd for StrengtheningProtocol(Hypothesis)
Scholar • Problem • Solution solve() • Niche • Hypothesis propose() • Hypothesis • Problem provide() • oppose • RefutationOutcome refute() • StrengtheningOutcome strengthen()
Administrator • cd for Game • register(Scholar) • start() • delivers • reports violations of game rules • computes reputations and produces scholar ranking • records history • invokes methods provided by GameProvider and Scholars.
game.cd • Hypothesis = ProposedHypothesis | OpposedHypothesis. • OpposedHypothesis = RefutedHypothesis | StrengthenedHypothesis <opposer> ScholarID.