Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maker DAO examples stub added to deontic logic experiments #58

Draft
wants to merge 8 commits into
base: main
Choose a base branch
from
Draft
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions deontic_logic/maker_atlas_examples/governance_scope.metta
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
;https://mips.makerdao.com/mips/details/MIP101#2-the-governance-scope-gov

;2.6.5.1.2
;If FacilitatorDAOs fail to take action against misaligned AD,
;they must be severely penalized.

;Aligned Delegate (AD)
;Aligned Delegates are Anonymous Alignment Conservers that
;use the Protocol Delegation System
;to enable regular MKR holders to easily
;and safely delegate their MKR voting power
;towards implementing the Aligned Governance Strategy of an AVC,
;while earning Governance Participation Rewards in the process.

;2.6.5.1
;If a FacilitatorDAO finds that an AD has performed a misaligned act
;or breached their requirements, they can derecognize the AD
;and confiscate their AD Buffer.
;The AD Buffer can be used as a whistleblower bounty in case
;an ecosystem actor provided useful data, information or evidence
;that led to the derecognition of the AD.
;GOV6 must specify sufficient safety mechanisms around the payment of
;the whistleblower bounty.

(= (Facilitator DAO) True)
(= (misaligned AD1) False)
(= (misaligned AD2) True)

(take-action DAO AD1)

(= (obliged (take-action $dao $ad))
(and (== (Facilitator $dao) True) (== (misaligned $ac) True)))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

$ac should be $ad (or visa versa)


(= (obliged (be-penalized $dao $ad))
(and (and (== (Facilitator $dao) True) (== (misaligned $ac) True))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

$ac should be $ad or visa versa

(not (== (match &self (take-action $dao $ad) $ad) $ad))))

!(obliged (take-action DAO AD1))
!(obliged (be-penalized DAO AD1))