Loophole: Adversarial Agents To Stress Test Your Morality — Brendan Rappazzo, Morgan Stanley
Read the talk
Loophole: Adversarial Agents to Stress-Test Your Morality
Brendan Rappazzo’s independent open-source project translates natural-language principles into formal rules, attacks those rules from both directions, and turns the resulting edge cases into patches—or questions only a human can answer.
From a talk by Brendan Rappazzo
At a glance
Ideas worth remembering
Test formal rules in both directions: search for objectionable behavior they permit and acceptable behavior they prohibit.
Automatic patches should repair an existing intention; cases that require a new value judgment belong with the user.
The DNA-artifacts example shows how a restriction on source data can miss derived representations that enable the same unwanted use.
The chatbot version tests both prohibited answers and false refusals, treating helpfulness failures as the counterpart to policy violations.
Synthetic contract cases can expose disagreements before signing, but they do not create bargaining power or enforcement.
Legislative hill climbing optimizes predictions produced by inferred profiles. Better simulated support is not the same as real political support or representative consent.
When adversarial agents stop finding contradictions, the search has reached a stopping point—not a proof of moral completeness or consistency.
A consent decision becomes a search problem
Brendan Rappazzo introduces Loophole as an independent open-source project, separate from his work as a machine learning researcher at Morgan Stanley. Its original form is a terminal-based game: state your morals, have one agent convert them into formal rules, and let adversarial agents search for cases where the rules and the morals disagree.
The project began with a concrete consent problem. After submitting DNA for ancestry testing, Rappazzo broadly opted out of other uses because he worried about where permission might lead. Yet a blanket refusal did not express his actual judgment. If someone presented a particular murder investigation or cold case, he might approve that use while rejecting another.
Case-by-case judgment could capture the nuance, but anticipating every future use would be “cognitively prohibitive.” Loophole reframes that burden as search: instead of asking a person to enumerate every exception in advance, generate situations that probe the boundaries of the stated principles.
The legal analogy supplies the model. Loophole treats a legal system as an attempt to translate moral beliefs into written rules. Broad language misses distinctions; highly specific language creates corner cases of its own. Rappazzo connects synthetic cases to the role of case law in common-law systems, where concrete disputes help judges interpret boundaries that legislation cannot fully anticipate.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Search both sides of every rule
What happens after the user enters a principle? A drafting agent first expands the natural-language statement into a legalistic code. Two agents then attack that translation from opposite directions:
- Loophole finder: searches for conduct that violates the user’s morals but remains legal under the generated code.
- Overreach finder: searches for conduct the user considers acceptable but the generated code prohibits.
- Judge: compares the original principles, formal code, and synthetic case, then decides whether the code can be patched or the value question must return to the user.
Here, “legal” means permitted by Loophole’s generated code, not necessarily permitted by real law.
That final distinction separates editing from moral judgment. If the principles already imply a clear answer and the code merely translated them poorly, the judge can revise the code automatically. If the case exposes an underspecified principle or a genuine tension between principles, an automatic edit would invent a value judgment. The system therefore escalates the case to the user.
The diagram answers the central implementation question: where does machine-driven refinement stop and human judgment begin? Both adversaries feed cases to the same judge, but the judge has two exits. A translation error returns to the code as a patch; an unresolved value question leaves the automated loop and goes to the user.
The user states general morals or principles for a particular subject.
Two adversaries test opposite failure modes. The judge patches translation errors but escalates unresolved moral choices.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Two DNA cases show when to patch and when to ask
The DNA demonstration makes the distinction observable. The user supplies several principles, and the drafting agent produces a document shaped like legislation, with a preamble, articles, and sections. The formal structure gives the adversaries explicit wording to test, but precise-looking language does not guarantee that its scope matches the original intent.
The first generated case finds a loophole. An insurance company does not train a predictive model directly on the person’s DNA; it trains on artifacts derived from that DNA. The restriction covers the source representation but misses its derivatives, even though the resulting use still violates the stated principles. The judge classifies this as a translation problem, patches the code, and displays the change as a Git-style diff. The talk does not provide the amendment’s wording, so the example establishes the need to cover derived artifacts without specifying the final legal definition.
The second case finds overreach. A person submits DNA for genetic research, and a researcher discovers a rare but treatable disorder. The current code appears to prevent the researcher from telling the participant. Unlike the artifacts case, this raises a new consent question: does permission for research also permit an unexpected, potentially beneficial disclosure? The judge cannot derive that answer from the existing principles and asks the user to decide. After that decision, the system patches the code, although the talk does not state which choice was made.
The project’s unusually large response after its open-source release encouraged Rappazzo to test whether the same loop could do more than provoke personal reflection. The next three branches preserve the same shape—formalize intent, attack the formalization in both directions, and repair or escalate—but change what the “code” governs.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Turn chatbot policies into adversarially tested prompts
The first branch applies Loophole to customer-facing chatbots and agents. A company states both its moral policy and the subjects the assistant should or should not discuss. A drafting agent turns those requirements into a codified system prompt rather than a legal document.
The two attack directions map cleanly onto chatbot behavior. One adversary tries to make the bot discuss a prohibited subject; the other asks legitimate questions and looks for false refusals. Testing only prohibited answers would miss the second failure mode, where a supposedly safe assistant becomes useless by declining work it should perform. Rappazzo presents this as an exploratory prompt-construction method, without reporting a measured improvement or showing that the final prompt enforces every intended rule.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Use synthetic cases to expose contractual disagreements
The second branch treats a person’s preferences as a contract to compare against external terms. A user might state how online services should handle their data, refine those preferences through adversarial testing, and then compare the resulting code with a company’s terms of service. Synthetic cases make the disagreement concrete: they show a situation where the company can do something the user’s principles reject.
For a large company, finding a conflict does not create bargaining power. As Rappazzo puts it, “It’s not a negotiation.” The practical gain is better information about what the user is accepting. Loophole can clarify the gap between two documents, but it cannot compel the company to change its terms.
A more symmetric version gives both parties a voice. Two people entering a cross-border work agreement could separately specify expectations around payment and conduct. The system would stress-test each side, identify conflicting cases, and surface them before anyone signs. That may improve the wording and the conversation, but the proposed mechanism does not enforce performance or resolve a later breach; confidence in the text is different from confidence in the counterparty.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Simulate votes, then hill-climb the bill
The most aspirational branch applies the framework to government. A constituent could compare a refined moral code with a bill or politician’s positions and inspect concrete disagreements. A legislator could run a proposed bill against simulated colleagues before submission. Rappazzo acknowledges substantial privacy and logistical problems before setting them aside for this experiment.
The Senate simulator builds profiles from senators’ public voting histories and other public information, infers a moral system for each senator, and converts it into a codified rule set. A submitted bill is then evaluated against every profile, producing a simulated vote, leaning, and explanation.
Once simulated support becomes a score, bill revision becomes an optimization loop. The system proposes a language change, evaluates the revised bill against the senator profiles, and keeps changes that increase support while attempting to preserve the bill’s core principles. It can also rank candidate changes, leaving the user to choose which tradeoffs are acceptable.
A Medicare example reportedly begins around a 50–50 simulated split and reaches 52 supporting votes after hill climbing. The observable change is the vote count; the causal path is proposed wording change, reevaluation against each inferred profile, updated aggregate support, and another iteration. The talk does not show the textual revisions or specify the search algorithm, so it remains unclear whether the system preserved substance or merely judged that it had.
The diagram answers what “hill climbing a bill” means here. It is a feedback loop over a model-generated score, not a direct interaction with legislators. The user remains outside the automatic loop to reject compromises that improve the score while changing the bill in an unacceptable way.
The submitted text includes principles the revision process should preserve.
The simulator proposes and scores revisions repeatedly, while the user chooses which tradeoffs to accept.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Scale from legislators to personas—without confusing simulation for consent
The final experiment replaces senators with synthetic constituent profiles. Using an NVIDIA dataset of USA personas, Rappazzo takes 500 personas per state. For each persona, the model drafts morals and a corresponding legal contract, then compares a bill with those contracts. The same hill-climbing process can optimize for greater agreement across the modeled population rather than greater support among modeled senators.
The consequential limitation sits at the measurement boundary. The talk provides no comparison between simulated and actual Senate votes, and no validation that the 500 personas per state, their generated morals, or their contract comparisons reproduce real constituent preferences. The 52-vote result therefore means 52 votes inside the simulator, while a higher persona-agreement score means better agreement with the constructed personas—not evidence that real voters would support the revised bill. The privacy and logistical problems of collecting comparable preferences from actual constituents also remain unsolved.
Loophole’s immediate value is more modest and more defensible: it turns vague principles into concrete questions. A user can add nuance after each difficult case and continue until the adversaries stop finding contradictions. That stopping point can increase confidence in the rules tested so far, but it cannot prove that the moral system is complete or consistent; the agents may simply have exhausted the cases they can generate.
That leaves the project with a useful split personality. It is already a game for discovering what your written principles accidentally permit or forbid. Its larger applications—system prompts, decentralized contracts, and legislation—are experiments in translating intent into rules and attacking the translation before the stakes become real. Rappazzo closes by inviting people to try, fork, and contribute to the open-source project.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
The open-source implementation includes legal-rule and chatbot stress-testing modes, configuration, example principles, session persistence, and generated reports. It is the practical starting point for trying or forking the project.
Related talks
- ALPHALAB: Autonomous Multi-Agent Research Across Optimization Domains with Frontier LLMs — Brendan Rappazzo
Rappazzo develops the related idea of adversarial, measurable loops further in an autonomous research system, with particular attention to evaluation failures and verifiable environments.
- Building and evaluating AI Agents That Matter
Sayash Kapoor’s discussion of benchmark gaming and the gap between simulated capability and operational reliability provides a useful counterpoint to Loophole’s Senate and persona simulations.
Read the complete timestamped transcript
- 0:12
I'll be talking about my project
- 0:13
loophole. And I'm actually a machine
- 0:16
learning researcher at Morgan Stanley,
- 0:18
but this has nothing to do with Morgan
- 0:20
Stanley. This is just a open-source
- 0:22
project I've been building for fun. And
- 0:25
to give sort of the high level flavor to
- 0:27
start, it's really this uh game you can
- 0:30
play that's built on top of this
- 0:32
adversarial agent framework. So you
- 0:35
specify your morals, one agent codifies
- 0:38
that into a legal system and then these
- 0:40
two adversarial agents try to find
- 0:42
contradictions in your morals. And
- 0:45
lately I've been building different
- 0:46
extensions on top. Um, but I wanted to,
- 0:50
you know, start with sort of the origin
- 0:52
story and and how I came up with this
- 0:54
this idea. And so this really started,
- 0:57
you know, a long time ago, I had sent my
- 0:59
DNA into 23 and me for uh ancestry
- 1:03
testing. Um, and I kept hearing about,
- 1:07
you know, more recently how DNA samples
- 1:09
can be used, of course, to help solve
- 1:11
crimes and all these forensics and cold
- 1:14
cases. And I was thinking about how I
- 1:16
had sort of opted out of of everything
- 1:19
because, you know, I was scared of the
- 1:20
kind of slippery slope and and how my
- 1:22
DNA would be used. Um,
- 1:26
but you know, there there are certain
- 1:28
cases that I would be okay with. And
- 1:30
it's sort of interesting. I was thinking
- 1:32
like, you know, if someone could present
- 1:34
to me case by case, you know, we'll use
- 1:36
your DNA to solve, you know, help solve
- 1:39
this cold case or this murder. I could
- 1:40
sort of say yes or no. and I know where
- 1:43
the the definition of like the and the
- 1:45
nuance of my morals are. Um, and but you
- 1:49
know, of course, like enumerating all of
- 1:51
this case by case is really sort of
- 1:54
cognitively prohibitive. Like there's
- 1:56
not a good way to do this currently.
- 2:00
And then I was thinking sort of more
- 2:01
zoomed out that there's a lot of
- 2:03
analogies to sort of the legal system as
- 2:06
a whole. So, you know, one way to think
- 2:08
of what a legal system is in our society
- 2:10
is really just a way that we are trying
- 2:13
to c codify our own moral beliefs. And I
- 2:16
think sort of in a similar way like
- 2:18
finding the true nuance of our morals
- 2:20
and what the law should be as this
- 2:22
really hard translation task. And I
- 2:25
think often we kind of heir on the side
- 2:27
of being too general because you know
- 2:30
finding that nuance is really difficult
- 2:32
and if you try to have a perfect
- 2:34
translation it can we lead to these kind
- 2:36
of weird corner cases or or weird
- 2:38
failure modes and I even think kind of
- 2:41
like peer-to-peer when we're relating to
- 2:44
each other politically a lot of times
- 2:45
the disagreements are more kind of
- 2:48
fighting over core values which we don't
- 2:50
really disagree on um instead of
- 2:52
exploring the really nuanced
- 2:54
points of our our morals and I think you
- 2:58
know following that kind of broader
- 3:00
legal example I think in the you know
- 3:02
the English common law system that's why
- 3:05
we sort of lean on case law so heavily
- 3:08
because we know that finding this this
- 3:11
nuance and these nuance boundaries is
- 3:12
difficult and so we kind of rely on
- 3:15
smart judging to interpret and apply the
- 3:18
law um correctly and you know of course
- 3:21
even with like the Supreme Court things
- 3:22
can get elevated and we can decide
- 3:25
whether a law is valid at all. Um and so
- 3:29
that was sort of you know the idea is
- 3:31
like can you take your morals and can
- 3:33
you do this kind of synthetic case law
- 3:36
generation. So you know um this is
- 3:40
overwhelming to do by hand but it seems
- 3:42
like the new generation of LLMs are
- 3:44
finally sort of smart enough to do this
- 3:46
kind of highle moral reasoning and so
- 3:49
that was sort of the the the starting
- 3:51
point for this game. Um, and I just want
- 3:54
to take you through sort of the initial
- 3:55
release of the game, the setup, how it
- 3:57
works, and then also talk about some of
- 4:00
the different branches I've been
- 4:01
building on top of this open source
- 4:03
project because I think it could go in
- 4:04
some interesting directions. And so at a
- 4:08
high level, how the game works is you in
- 4:11
natural language and this all happens.
- 4:13
It's sort of like a terminal based game.
- 4:15
You specify your morals and it could be
- 4:18
uh your general morals or maybe about a
- 4:21
specific subject and then there's one
- 4:23
agent that takes those morals and drafts
- 4:25
sort of a really rich legally codified
- 4:28
legal system and then it just operates
- 4:30
in this loop where one agent is
- 4:33
instructed to try and find loopholes in
- 4:36
your system. So something that is uh
- 4:38
immoral but legal and another is uh
- 4:41
prompted to find overreach. So things
- 4:43
that are actually moral but illegal
- 4:45
given your system. And a judging agent
- 4:48
looks at the your morals the produced
- 4:51
legal code and these sort of synthetic
- 4:53
case law examples and first sees can it
- 4:56
auto patch. So, like maybe the original
- 4:59
draft of your your legal code sort of
- 5:02
was an imperfect translation and there's
- 5:04
not really a contradiction and it can
- 5:06
just sort of autodo this update. Or
- 5:09
maybe it's really kind of an
- 5:10
underspecification of your morals um or
- 5:13
some kind of contradiction in your
- 5:15
morals and in that case it raises it to
- 5:17
you as the user to sort of be the judge
- 5:19
and make a determination.
- 5:23
Uh
- 5:24
>> is it still on for you? It disappeared
- 5:25
for me.
- 5:47
Okay. Um, so I know that, you know, if
- 5:50
you I hope if you're curious about the
- 5:52
game, you'll play it. It's all on
- 5:54
GitHub. But I just wanted to show some
- 5:55
examples. And this is a lot of text. So
- 5:57
it's more about just showing the kind of
- 5:59
shape of the the input and output. So
- 6:02
this is sort of how you would provide
- 6:03
your input. And going back to the DNA
- 6:06
example, you might you know specify some
- 6:08
number of of moral principles. And then
- 6:11
the sort of codified legal system again
- 6:13
just kind of looking at the shape has
- 6:15
this really like legal ease, you know,
- 6:17
preamble articles uh sections really
- 6:20
trying to be uh you know write it in
- 6:23
precise legal language. And then these
- 6:25
the different kind of synthetic case
- 6:28
laws get suggested. So in this case it's
- 6:31
talking about this is a loophole it
- 6:33
found where an insurance company um
- 6:36
trained a predicted machine learning
- 6:38
model not on your DNA but on artifacts
- 6:40
of the DNA. And so it's saying you know
- 6:42
this is actually immoral but currently
- 6:45
legal given your system. And in this
- 6:47
case, it's it found that it could do
- 6:49
sort of this auto patching and then you
- 6:51
get this sort of like get style
- 6:53
difference of of your original legal
- 6:55
system and then the the difference it
- 6:57
had to make to ensure you know this was
- 7:00
consistent with your morals.
- 7:02
And then this is a an example of
- 7:04
overreach and in this case it found that
- 7:06
it couldn't do the auto patch. It's
- 7:08
talking about, you know, someone submits
- 7:10
their DNA for uh genetic research, but
- 7:13
the researcher finds they have a rare
- 7:15
but treatable genetic disorder. Uh but
- 7:18
currently your morals kind of say this
- 7:20
shouldn't be allowed that they could
- 7:22
disclose this disease to the the person
- 7:24
submitting. And so this was raised to
- 7:26
the user to me to kind of make a
- 7:28
judgment. And then similarly, when you
- 7:30
make the judgment, you get this this
- 7:32
patch legal system. And so, you know,
- 7:35
it's just sort of a a fun game and I
- 7:37
posted on Twitter and shared it open
- 7:40
source on GitHub. And for me at least,
- 7:42
it was by far the most viral post I've
- 7:46
had. And it sort of made me think like I
- 7:48
think a lot of people just said it was
- 7:49
sort of fun. You could stress test your
- 7:51
morals, see if you have any interesting
- 7:53
contradictions. But it also made me
- 7:55
think, you know, is there maybe
- 7:57
something more here? like could this be
- 8:00
um you know have more like practical or
- 8:02
bigger scope implications and so I'll
- 8:05
just talk about three different branches
- 8:06
I'm kind of exploring um the first and
- 8:10
sort of leave leaving the legal area and
- 8:14
really more practical is thinking about
- 8:16
sort of an auto way to make
- 8:17
constitutions for chat bots or really
- 8:20
you know for agents in general where you
- 8:23
know say you're a company and you want
- 8:24
to have a um agent or chatbot that's
- 8:28
customerf facing and you want it to sort
- 8:30
of adhere to a moral code but also have
- 8:33
things it will and will not talk about.
- 8:35
Um I've kind of in one branch formulated
- 8:39
it so you in a similar way write your
- 8:42
morals. You write what the chatbot
- 8:44
should and not talk about and then it
- 8:46
tries to write this codified system
- 8:48
prompt and then you have these kind of
- 8:49
adversarial agents trying to get it to
- 8:52
either talk about something it shouldn't
- 8:54
or refuse to talk about something it
- 8:56
should. And I see it as this sort of
- 8:58
analogy or analogous method to GEA um
- 9:01
but really aimed at kind of building
- 9:03
these codified system prompts.
- 9:07
The uh second use case that I'm I'm
- 9:10
particularly interested in is thinking
- 9:12
of it as a way to sort of do more ad hoc
- 9:15
or decentralized contracts. So I think
- 9:18
in in a simple case say like you can
- 9:22
specify how you want your data or
- 9:24
privacy to be handled online and you can
- 9:27
go through this sort of adversarial game
- 9:29
to get this codified legal system of how
- 9:31
you want your your data handled and if
- 9:34
you go to you know say Apple releases a
- 9:36
new terms of service or something you
- 9:38
can run the um contradictions between
- 9:42
your legal system and between Apple's
- 9:44
terms of service and like surface any
- 9:47
interesting contradictions or like
- 9:49
synthetic cases where this would lead to
- 9:52
a difference between how you know your
- 9:55
morals, what you want and what the
- 9:56
company is doing. And you know in the
- 9:58
case that it's a big company, maybe you
- 10:00
can't really change anything. It's not a
- 10:02
negotiation, but you can at least be
- 10:04
sort of have better information about
- 10:07
the contract you're signing. But I also
- 10:09
think in the case of you know thinking
- 10:11
more decentralized like if you're trying
- 10:14
to have contracts without you know some
- 10:17
central authority kind of enforcing them
- 10:20
and you're trying to maybe do contracts
- 10:21
across different countries. Um, thinking
- 10:25
about like if you can specify your
- 10:28
morals and how you want to like
- 10:30
interface, you know, maybe it's just
- 10:32
like contracted work, how you want your
- 10:34
work to be paid for and and and the
- 10:37
different morals surrounding that. And
- 10:39
the other party can do the same. And
- 10:41
then you both get this kind of stress
- 10:42
tested codified contract. And then you
- 10:46
can kind of find the the disagreements
- 10:48
if there are any and surface them before
- 10:50
you agree. And then you can kind of be
- 10:52
more confident in the the contract as a
- 10:55
whole.
- 10:58
And the last thing and maybe the kind of
- 11:00
more aspirational angle is thinking
- 11:04
about smarter government or more
- 11:06
efficient government. Um I think there
- 11:08
would be a lot of different privacy
- 11:10
issues and logistical issues but sort of
- 11:12
ignoring those for now and just thinking
- 11:14
big picture. I think for voters or
- 11:17
constituents, you know, this could be a
- 11:20
really interesting way if you you
- 11:21
defined your morals, you have this
- 11:23
stress- tested legal code, sort of any
- 11:26
new bill or politician that comes out,
- 11:28
you could kind of run your contract
- 11:31
against theirs and surface, you know,
- 11:33
what are the the cases you would
- 11:35
disagree or or interesting
- 11:37
uh points that are kind of immoral to
- 11:39
you or or a contradiction. Um, I also
- 11:44
think, you know, relating to one
- 11:46
another, it's like a more I think we all
- 11:48
have a lot of nuance in the way we feel
- 11:51
about things and this is a way to kind
- 11:53
of get to that nuance instead of arguing
- 11:56
over just values which is, you know,
- 11:58
often the values are not in
- 12:00
contradiction. And then I think maybe a
- 12:02
little more practically for legislators,
- 12:05
you could imagine um if you want to
- 12:08
propose a bill and you can have like a a
- 12:10
simulation of all the other legislators
- 12:13
and a and a legislative body, you could
- 12:15
sort of stress test it before
- 12:17
submission. And so the the third branch
- 12:20
I've been building on this project is I
- 12:22
I tried to do this for the US Senate.
- 12:26
And so what I did is I first had Claude
- 12:28
go through all current US senators and
- 12:32
look at, you know, kind of all their
- 12:34
voting history and anything else that
- 12:35
was public and build their kind of moral
- 12:38
system and then ran it through the
- 12:40
loophole process to get a codified sort
- 12:43
of legal code.
- 12:45
And then on this system, you can, you
- 12:47
know, take any current bill that's being
- 12:50
proposed or even propose your own and
- 12:52
submit it. And you can have Claude sort
- 12:54
of simulate how each senator would vote.
- 12:57
And so here you can see like a breakdown
- 12:59
of um some senators, which way they're
- 13:01
leaning and sort of their reasoning
- 13:03
behind the vote.
- 13:06
Um and I think you know it's sort of
- 13:08
interesting just to think about like
- 13:11
seeing what you know a proposed piece of
- 13:14
legislation how people would vote but
- 13:16
also this sort of becomes and I think on
- 13:18
theme of the conference its own
- 13:20
verifiable domain or loop and you could
- 13:22
think about even kind of hill climbing
- 13:24
the bill towards um getting like a super
- 13:27
majority or whatever you need it to
- 13:29
pass. And so in this case, like this
- 13:32
this Medicare bill I was testing, you
- 13:34
know, it found that I think it
- 13:36
originally started at like a 5050 vote
- 13:38
and it found ways to hill climb the
- 13:41
language of the bill such that it passed
- 13:43
with um 52 votes. And I think, you know,
- 13:47
this is an example of it can find um
- 13:51
like the sort of the core tenants of the
- 13:53
bill and it can try to find like run the
- 13:56
the bill against each senator's contract
- 14:00
and find is there any way I can change
- 14:01
the language such that I don't violate
- 14:04
sort of the core tenants or morals of
- 14:06
the bill and kind of do those auto
- 14:08
patching that way. And then it can also
- 14:10
find um you know kind of rank order the
- 14:14
changes that would need to be in place
- 14:16
to maximize votes and you as a user can
- 14:18
kind of choose the trade-offs that way.
- 14:23
And then the last thing I I've been
- 14:25
trying out more recently with this
- 14:27
branch is actually looking at, you know,
- 14:29
kind of even bigger picture, like can
- 14:32
this lead to an even more efficient of
- 14:34
government where you have every sort of
- 14:37
constituent in a in a state or whatever
- 14:40
the district is sort of have their legal
- 14:43
code and then you could just submit any
- 14:45
bill and actually measure sort of the
- 14:47
agreement between like the the actual
- 14:49
voters. And so for this, I took the
- 14:52
Nvidia has this really great data set of
- 14:55
USA personas. And so I took 500 personas
- 14:58
per state and it's supposed to be sort
- 15:00
of well representative of the state's
- 15:02
population. Did the same process of
- 15:05
having them given the persona, draft
- 15:07
their morals, draft their sort of legal
- 15:09
contract, and then take any bill you're
- 15:12
interested in and kind of run it against
- 15:14
each state. And you can also, you know,
- 15:16
measure how much people like this bill
- 15:18
or how much it's in agreement with their
- 15:20
morals and then also do this hill
- 15:22
climbing where you kind of optimize the
- 15:24
bill for the people.
- 15:27
And so just to conclude, you know, at at
- 15:30
minimum, I think it's a pretty fun game.
- 15:32
I'm biased, but it's a lot of fun to
- 15:34
just try out different um you know,
- 15:36
things you care about, put in your
- 15:38
morals, see if there's any
- 15:39
contradictions. you know, often it will
- 15:41
raise some really interesting questions
- 15:43
and then once you kind of provide that
- 15:46
nuance, the game, you know, the the
- 15:48
agents won't be able to find any more
- 15:50
contradictions and you can kind of feel
- 15:52
good that you have like a a consistent
- 15:54
nuanced uh moral system. Um, but I I am
- 15:58
interested in, you know, exploring could
- 16:00
this be are there kind of real
- 16:01
applications here for some kind of like
- 16:04
decentralized or better contracts and
- 16:07
maybe even for legislators as a way to
- 16:09
sort of stress test your bills and even
- 16:12
think about how to write um better laws
- 16:14
that are, you know, better for the
- 16:16
people in your district or more
- 16:17
representative of what the people in
- 16:19
your district want. Um, and so this QR
- 16:24
code is to the the Senate simulator. So
- 16:27
I encourage you if you're interested to
- 16:28
play and um the other one is to my
- 16:32
website which has the the full GitHub to
- 16:34
loophole um and please you know play
- 16:37
with it fork it uh I'd love to have
- 16:40
other contributors. Thank you.