Martin Mose
Bentzen abstract.
Applying for a Residence Permit in
Paragraph 9 of Danish Immigration Law
deals with family reunion (Danish: familiesammenføring), i.e. obtaining
a residence permit to
In this paper I consider the explicit
structure (e.g. cross-references, conditions and exceptions) of the law and
consider the role of legal practise in determining underspecified terms of the
law. The logic used is a non-monotonic first-order logic. An automated version
of the formalization of paragraph 9 is implemented in Prolog.
The result of this work is to be a web
site where the program resulting from the formalization can be downloaded for
free, to give applicants an idea about the demands put upon them, when applying
for a residence permit. In a wider context, systems such as this could be used
by immigration lawyers, immigration officials and maybe even legislators trying
to evaluate and fixate possible interpretations of proposed laws.
A legal text has a certain internal
structure, it is divided into clauses and sub-clauses referring to and depending
upon each other in various ways. An example of this is cross-references, where
one clause describes an exception to another or clauses are used as conditions
for other clauses.
In the
paper I describe a primitive naming mechanism, depending on certain predicates
having been decided as having primary interest and made relative by adding
arguments. An example of such a predicate could be getting a residence permit. Thus, for instance the binary predicate Permit(x, clause 1), would mean that x can get a residence permit according to
clause 1. Changing a bit the tools of a recent MA thesis by Marcello di
Bello, an exception to a rule can be written Exc(x, clause 1, clause 2) ¬ R(x). Here clause 1 is the clause x is
exempt from, clause 2 is the name of
the exception and R specifies some
condition. This could for instance be x
is exempt from clause 1 by clause 2, if x is a criminal. Clause 1 could be
written Permit(x, clause 1)¬ S(x)Ù not($y(exc(x,clause1, y))). This means that x can get a
residence permit according to clause 1,
if x has a sponsor and x is
not excempt from clause 1 by some (other) clause, y. In the paper I consider the
semantics of these constructions. The not
predicate is negation as failure from
the paradigm of logic programming. not(P),
means that P cannot be proven. With the clauses above and assuming that Ann
has a sponsor but that she is a criminal, Ann cannot not get a residence permit
according to clause 1, because she is exempt from it by clause 2.
When
interpreting a legal text, e.g. to see if a certain right applies to a specific
individual, certain underspecified terms in the text must be fixed. This
fixation is partly established in the administrative practice and by court
decisions in cases of controversy.
In effect, legal practise change the rules. In this paper I also investigate the
interplay between the static intertextual structure of the Danish Immigraion
Law and dynamic legal practise.
As sources
for legal practise I use notes from the Minestry of Integration, legal
textbooks and articles written by legal scholars. Futhermore, my plan for the
near future is to test the system on various types of potential users of the
system, applicants, legal experts,
immigration lawyers and immigration officers. This feed-back will undoubtedly
enhance the systems usability and correct certain errors.
Future
development includes adding legal meta-principles and tools from machine
learning to deal with e.g. court decisions in more sophisticated ways, than is
now the case (where they are treated as new rules). The non-trivial questions
involved will be discussed in he final part of the paper.
Note:
A prototypical version of the Prolog program
Residence Permit is ready at the time of the workshop. It is an expert system
asking for information about the applicant and the sponsor living in
References:
Marcello Di Bello (2007) Formalizing Legislation
in the Event Calculus: The Case of the Italian Citizenship Law., ILLC Publications,
MoL- 2007-07.
Ivan
Bratko (2001): Prolog Programming for
Artificial Intelligence, Addison-Wesley.