Я готовил презентацию для Конференции по разработке законодательства Канадского института отправления правосудия на тему Правила как кодекс. Пытаясь выяснить, как представить тему Правила как Кодекс разработчикам законодательства, я размышлял о различных значениях, которые придавалось термину Правила как Кодекс.

Некоторые люди используют «Правила как кодекс» для обозначения более широкой методологии предоставления государственных услуг, которая включает в себя метод разработки законопроектов, при котором вы пишете законодательство одновременно на естественных и компьютерных языках. Некоторые люди, как мне кажется, более интуитивно используют «Правила как код» для обозначения продукта — законодательного акта, написанного на языке программирования.

Это не одно и то же, и название было источником незначительных разногласий среди сторонников. Но меня интересует не то, как вы их называете. Что меня интересует, так это то, что происходит, когда вы их комбинируете, и что происходит, когда вы этого не делаете.

Вы можете делать и то, и другое одновременно, ясно. Вы можете использовать методологию «Правила как код» и посредством этого процесса создавать «Правила как код».

Кроме того, вы можете создавать Правила как продукты Кодекса, не используя методологию составления проектов и предоставления общественных услуг. Этот тип «Правил как кодекса» более или менее соответствует тому, как легальное прикладное программное обеспечение будет разрабатываться сейчас, если разработчики отделят юридическую аргументацию. (Я думаю, что если у вас нет юридических правил, отделенных от остальной части кодекса, вы говорите о «Правилах в Кодексе, там, где-то», что отличается.)

Но, что удивительно, методология разработки законопроектов сама по себе имеет свои преимущества, даже если вы никогда не применяете никакого кода.

Если вы хотите что-то понять, учите этому.

Почему это правда? Потому что процесс попытки сообщить что-то, что вы знаете, человеку, который этого еще не знает, заставляет вас учитывать разницу в контекстах. Это похоже на «проклятие опыта», когда эксперт забывает, что значит быть человеком, который еще не понимает.

Преодоление проклятия опыта требует, чтобы вы поставили себя на место человека, который знает меньше, и перестроили свое собственное понимание с этой новой отправной точки.

Точно так же, когда вы пытаетесь понять часть закона, компьютер берет на себя роль человека, который знает меньше. А синтаксис и семантика языка программирования дают вам весь контекст того, что компьютер уже знает.

Таким образом, попытка закодировать ваше законодательство — даже если вы делаете это ручкой и бумагой — вынуждает вас понимать его с точки зрения меньшего контекста, и вы лучше усваиваете его. Вы ловите ошибки, о которых не подозревали.

В этом смысле это просто продвинутая техника разработки законопроектов.

Лично для меня это не просто гипотеза. Я постоянно ощущал этот эффект. Каждый раз, когда я сажусь кодировать набор правил, я получаю более глубокое понимание того, как эти правила работают, задолго до того, как я попрошу компьютер что-либо сделать с кодом.

Совсем недавно я кодировал набор правил, касающихся Covid-19 в Альберте. Я перечитал их несколько раз и не увидел в них ничего плохого. Затем я попытался закодировать их и понял, что существует сценарий, при котором человек, о котором известно, что у него нет болезни, тем не менее может быть вынужден продолжать изоляцию.

У профессора Скотта Брюэра из Гарвардского юридического университета есть аналогичный аргумент, который опирается не на языки программирования, а на формальную логику. Он утверждает, что юристы должны научиться анализировать, например, решения апелляционного суда, формируя формально-логические представления аргументов, выдвинутых судом, и анализируя их с использованием методов формальной логики. Это позволяет выявить то, чего не может сделать менее дисциплинированный анализ.

Языки программирования, использование которых в Правилах как коде вызывает у меня наибольший энтузиазм, основаны на формальной логике. Возможно, в какой-то момент что-то вроде Blawx будет использоваться в юридических школах для обучения юридическому анализу.

Разве это не было бы чем-то?

Говоря о Blawx, моя статья о Rules as Code and Blawx только была опубликована как часть выпуска 1.2 отчета MIT Computational Law Report. Буду рад вашим отзывам.

Вакансия в области вычислительного права

  • Я только что услышал о прекрасной возможности для 4-летней докторской степени с доктором Праккеном в Ультрехтском университете в рамках проекта по созданию объяснений выводов алгоритмов черного ящика искусственного интеллекта. Доктор Праккен — ведущий специалист по моделированию юридических аргументов и отличный преподаватель.

Приближается…

  • Материал, который я написал для Slaw.ca о Центре вычислительного права СМУ, выйдет в конце августа.
  • Я также буду участвовать в панели Правила как кодекс в первый день (10 сентября) конференции по разработке законопроектов 2020 года, проводимой (виртуально) Канадским институтом отправления правосудия. Проверьте их веб-сайт для регистрационных деталей. Насколько я понимаю, для студентов есть спонсируемые билеты.

Я работаю юристом в компании Round Table Law, преподаю курс «Кодирование права» на юридическом факультете Университета Альберты и являюсь старшим научным сотрудником Центра вычислительного права Сингапурского университета управления. Computational Law Diary — это серия постов о том, о чем я думаю в мире вычислительного права. Они являются моим собственным мнением и не отражают мнения Центра, Исследовательской программы, СМУ, Университета А или кого-либо еще.