Seeking feedback on a rough interface prototype:
# thinking-together
j
Seeking feedback on a rough interface prototype:
☝️ 1
The idea is to provide answers to legal questions in a way that answers "what are the relevant inputs", "why are those inputs relevant", "what is the answer in my fact scenario", "why is that the answer", "how could I get the answer to be different", "how else could I get the same answer", and more, all in an interactive interface.
Leaf nodes would be inputs, and as you change the inputs, the colours in the graph change to indicate the answer, and the reasons. You could also theoretically override intermediate nodes for exploratory purposes, and it would show that the inputs to that node were being ignored, somehow.
🤔 1
Some things I'm curious about: how to provide easy navigation of this, limiting what is displayed to what the user is interested in, interactively, without requiring the entire screen.
🤔 1
whether it works with non-boolean conclusions.
how to represent "irrelevant" inputs, etc.
feedback welcome. in particular, if anyone has actually seen anything like this in the wild, open source, let me know.
c
Why does it go right to left?
j
Because there is less information on the left, so it seemed like an easier place to "start". But I could be wrong. More intuitive the other way around?
Also, arguably the goal is the information that the user is most interested in.
k
I'm still having trouble following this in spite of the explanation. Perhaps the use case is too far away from what I usually think about. I wonder if it would help you get better feedback to explain what the concrete artifact is before you describe this particular visualization of the artifact.
j
Excellent point. It's a visualization of the explanation for why an automated legal reasoning tool reached a conclusion that a person was eligible for a benefit.
m
What does OAS stand for?
c
I think I understand the diagram. OAS is something like "Old Age Support" which will be some kind of service from the government with eligibility criteria. This eligibility criteria is explained in pages and pages of legislation. You can become eligible in different ways i.e. under section 3(2) (you have less than $X savings) etc
Is that right?
👍🏻 2
l
An IDE with "type checking" for laws as pure functions + FSM + separating objective input and subjective interpretation weights could be amazing...
...see all possible outcomes and why, clearly, before signing the paper, + with probability distributions if given in input. Backtrace and see what would need to change to fix it. See dependencies with existing legal framework, and outcome changes/interplay/affected parties when introducing new law/statement. Analysis connected to prejudicing cases.
j
I don't think pure functions are a good idea for modelling laws, because laws aren't written that way. But otherwise that's the basic idea. It also improves the drafting.
k
How would it influence drafting? Are you imagining automatic generation of legalese from such diagrams?!
j
No, the encoding that is used to generate the diagram is a model of the legislative text. The task of creating that model often reveals inadequacies in the legal text. The code can also be used to do things like search for loopholes in the abstract based on the model. So not these diagrams in particular, but it's benefit of the larger ecosystem of digitized rules.
👍 1
👍🏽 1
w
Super interested in this space. One thought on the relevance question. There are a few ways for a rule/chain of inferences to be relevant/irrelevant. Suppose we look at the whole support tree for an Eligible conclusion. If a rule never shows up, it's totally irrelevant. If a rule shows up in all justification paths, it's totally relevant: it's necessary, there's no way to be Eligible without it. Between these extremes we have all manner of potential conditional relevancies. Say the case for those over 65 and the case for those under 65. The requirements could be totally different for those two groups, likely there will be some overlap though. Whatever overlaps is relevant regardless of age. For me, this line of thinking resonates with two notions Bayesian Networks and query planning.
c
I think I would make it left-to-right or top-to-bottom. Top-to-bottom means it could be put side by side with the legislation (a bit like godbolt.org - which is, in a way, doing something similar). I think I understand why you prefer this way - because the user is going to come to it primarily interested in "Am I eligible?", and can follow up with "but why? but why?" - "because you are eligible if you meet any of these three subsections, and you meet section 3(2), because you meet 3(2)a...". For me though, I am perfectly comfortable with "why? why?" as going backwards against the normal direction of "calculation".
If it's possible, I think natural language explanations (i.e. expanding the "all", "any" could help. This is how a helpful lawyer would explain it to somebody. They would point their way through the text, with a commentary like I put above "You need to meet one of these criteria, but you don't meet any".
j
@wtaysom I'm working on a tool that reports multiple models, right now, and once that's working it will be possible to do post-processing of the multiple models to determine if certain hypothesized facts are necessary in all, some, or none of the models, and potentially combining the models into a disjunctive explanation of all of them at the same time. I don't know about Batesian Networks and query planning, but I have a path toward exactly what you're talking about.
@Chris Knott Thanks for that link. I have a different tool that is doing the side-by-side from legislative text to legislative encoding, or will eventually. This idea is just for explaining the answer. Natural language is definitely the way to go, and that's where I'm starting. The diagram doesn't have the natural language text in it because of space and laziness. 🙂
t
Counter to @Chris Knott I think right-to-left is the perfect choice. If I understand correctly, someone reading this is probably only interested in their own use case, so most of the tree will be collapsed. Presumably the user has already input a bunch of information about the current case, in which case you already know what relevant stuff to show them and what to hide. If it's the other way round and the user wants to know what needs to be true to be eligible, then you actually want to gather all the leaves and present them to him as a form. A form autogenerated in this way could react and remove queries that you've calculated are no longer relevant based on info given so far. The 'all's and 'any's will presumably have a mouseover text that says "all/any connected rule must apply for this to apply" or some such. Similarly a longer description string for the rules themselves - either permanent or on mouseover - would be needed. Unless this is a tool for people who read "OAS s.3(1)" a thousand times a day and not intended for laymen. For authoring the rules rather than reading them, might you actually prefer a freeform interface where you can drag the nodes around wherever? Then you could spatially organise the rules in way that makes implicit sense without having to verbalise anything.
k
Semi-related question to @Jason Morris: where do you see the main audience for Blawx in the near future? Not so much who you wish would use Blawx, but who you expect to use Blawx. Academics? Lawyers? Politicians?
j
@Konrad Hinsen In the short term, software developers who want to isolate legal logic in a way that is accountable and explainable, and the subject matter experts (lawyers, public servants) who are the source of truth as to what those rules mean. Also a teaching platform for computational law, and a tool for the analysis of statutes by drafters, reform advocates, etc. But these are all guesses in the absence of anything more than anecdotal evidence. Long term, I'm hoping Jeremy Crawford from Wizards of the Coast will use it to audit additions and amendments to the rules of Dungeons & Dragons, amid myriad other applications. 😉
The development is being supported by the Canadian federal government, at the moment, who want to use it (at my recommendation, so this is not independent advice) to explore the future use of Rules as Code in the federal public service.
I should say, their motivation to do Rules as Code is independent of me. Their motivation to use Blawx for it comes from me.
k
Support from government looks encouraging. It means they are aware of the approach and envisaging that it could play a role one day. What I was wondering is if this is another case of tech and no-tech stakeholders talking past each other. Apparently not, which is great!
j
Yeah, this isn't a case of a tool looking for a problem. I had a problem automating legal services inside my own law firm, originally, and went looking for tools. The current version of Blawx is actually the third tech platform I have worked with, and so far the best. But the tools could change again. 🙂