From: S White
Subject: help with AI project
Date: 
Message-ID: <bko5c5$rlo$1@mulga.cs.mu.OZ.AU>
Hi,
Just wanted to ask some advice. My plan is to research the area of AI
and law, specifically by developing a prototype for decision support
system adjusted to particular legislation etc. As i'm a lawyer rather
than a technician i am not yet that skilled in the area of ai
programming but hopefully i'll improve. The main question is what
language (prolog or lisp) should i use to start the work? What i
mainly want to do at the moment is to create a program with which you
can converse in natural language and "build upon" it until it reaches
rather high sophistication. When I achieve a program capable of rather
general conversation (and also know more about ai) i plan to add the
legal reasoning part. What is your suggestion on how to go about this?
(It's a four year project so i know this wont happen overnight).
Ultimately i want to complement the program with some kind of good
interface (possible face with lip sync / speech synthesis).

Regards,
S

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]

From: Arthur T. Murray
Subject: Re: help with AI project
Date: 
Message-ID: <3f700642@news.victoria.tc.ca>
> [...] My plan is to research the area of AI and law,
> specifically by developing a prototype for decision
> support system adjusted to particular legislation etc.
> As i'm a lawyer rather than a technician i am not yet that
> skilled in the area of ai programming but hopefully i'll improve.

http://mentifex.virtualentity.com/theory5.html AI theory 
is more important at the outset.  Then you may learn to
http://mentifex.virtualentity.com/acm.html program AI.

> The main question is what language (prolog or lisp)

http://mentifex.virtualentity.com/cpp.html -- C++ with new AI code;
http://mentifex.virtualentity.com/java.html -- see Mind.JAVA #1 & #2;
http://mentifex.virtualentity.com/lisp.html -- Lisp AI Weblog;
http://mentifex.virtualentity.com/perl.html -- first Perl module;
http://mentifex.virtualentity.com/prolog.html -- Prolog AI Weblog;
http://mentifex.virtualentity.com/python.html -- Python AI Weblog;
http://mentifex.virtualentity.com/ruby.html -- Ruby AI Blog (OO AI);
http://mentifex.virtualentity.com/scheme.html -- Scheme AI Weblog;
http://mentifex.virtualentity.com/vb.html -- see "Mind.VB #001" link.
http://mentifex.virtualentity.com/scheme.html -- Scheme AI Weblog;
http://mentifex.virtualentity.com/vb.html -- see "Mind.VB #001" link.

> should i use to start the work?
> What i mainly want to do at the moment is to create a program
> with which you can converse in natural language and

http://mentifex.virtualentity.com/jsaimind.html is a start --

> "build upon" it until it reaches rather high sophistication.
> When I achieve a program capable of rather general conversation
> (and also know more about ai) i plan to add the legal reasoning
> part.  What is your suggestion on how to go about this?

http://www.bloggingnetwork.com/Blogs/Blog.aspx/ai/ has been solved.

> (It's a four year project so i know this wont happen overnight).
> Ultimately i want to complement the program with some kind of good
> interface (possible face with lip sync / speech synthesis).
>
> Regards,
> S

A.T. Murray
-- 
http://www.kurzweilai.net/mindx/profile.php?id=26 need=$w.r.t PDAI
http://www.amazon.com/exec/obidos/ASIN/0595654371/ -- AI Textbook;
http://www.sl4.org/archive/0205/3829.html -- Goertzel on Mentifex;
http://doi.acm.org/10.1145/307824.307853 -- ACM SIGPLAN Mind.Forth
From: David M. Geshwind
Subject: Re: help with AI project
Date: 
Message-ID: <01c381e6$61e27c80$40f0c043@default>
Will the original poster please send me email (removing FILTER as direced
blow).

There is some information we should exchange offline.

  --  dmg

David M. Geshwind

Remove the FILTER to reply

Arthur T. Murray <·····@victoria.tc.ca> wrote in article
<········@news.victoria.tc.ca>...
> > [...] My plan is to research the area of AI and law,
> > specifically by developing a prototype for decision
> > support system adjusted to particular legislation etc.
> > As i'm a lawyer rather than a technician i am not yet that
> > skilled in the area of ai programming but hopefully i'll improve.
> 
> http://mentifex.virtualentity.com/theory5.html AI theory 
> is more important at the outset.  Then you may learn to
> http://mentifex.virtualentity.com/acm.html program AI.
> 
> > The main question is what language (prolog or lisp)
> 
> http://mentifex.virtualentity.com/cpp.html -- C++ with new AI code;
> http://mentifex.virtualentity.com/java.html -- see Mind.JAVA #1 & #2;
> http://mentifex.virtualentity.com/lisp.html -- Lisp AI Weblog;
> http://mentifex.virtualentity.com/perl.html -- first Perl module;
> http://mentifex.virtualentity.com/prolog.html -- Prolog AI Weblog;
> http://mentifex.virtualentity.com/python.html -- Python AI Weblog;
> http://mentifex.virtualentity.com/ruby.html -- Ruby AI Blog (OO AI);
> http://mentifex.virtualentity.com/scheme.html -- Scheme AI Weblog;
> http://mentifex.virtualentity.com/vb.html -- see "Mind.VB #001" link.
> http://mentifex.virtualentity.com/scheme.html -- Scheme AI Weblog;
> http://mentifex.virtualentity.com/vb.html -- see "Mind.VB #001" link.
> 
> > should i use to start the work?
> > What i mainly want to do at the moment is to create a program
> > with which you can converse in natural language and
> 
> http://mentifex.virtualentity.com/jsaimind.html is a start --
> 
> > "build upon" it until it reaches rather high sophistication.
> > When I achieve a program capable of rather general conversation
> > (and also know more about ai) i plan to add the legal reasoning
> > part.  What is your suggestion on how to go about this?
> 
> http://www.bloggingnetwork.com/Blogs/Blog.aspx/ai/ has been solved.
> 
> > (It's a four year project so i know this wont happen overnight).
> > Ultimately i want to complement the program with some kind of good
> > interface (possible face with lip sync / speech synthesis).
> >
> > Regards,
> > S
> 
> A.T. Murray
> -- 
> http://www.kurzweilai.net/mindx/profile.php?id=26 need=$w.r.t PDAI
> http://www.amazon.com/exec/obidos/ASIN/0595654371/ -- AI Textbook;
> http://www.sl4.org/archive/0205/3829.html -- Goertzel on Mentifex;
> http://doi.acm.org/10.1145/307824.307853 -- ACM SIGPLAN Mind.Forth
> 
From: Sebastian
Subject: Re: help with AI project
Date: 
Message-ID: <3311519b.0309290740.67d60660@posting.google.com>
hm, a very ambitious goal :))

I'am a lawyer and a computer scientist and I'am involved in a similar
project for my PhD (Representing legal knowledge - both procedural and
substantial - in some executable formal model). I wanted to do
everyting in the beginning (nlp processing, expert and decision
systems elements, machine learning from text, inference algorithms
etc.) but I trimmed down the effort to a manageable part of it: build
a formal model of a statute (or any other natural language text for
that matter) without concerning myself too much with implementation
details for now. I tried several notations (procedural ones - Petri
Nets, UML, EPC, ebXML, Statecharts and others - ER,OO,XML,prolog,
description logics, conceptual graphs, semantic web) but have at the
end come to the conclusion to better use one universal language which
subsumes all the others as special cases : first order predicate
logic. This way, you have one
language and one representation for both procedural and substantial
laws. There are some issues which are inherently second order in law
(like rights and duties that are applied to situations, which are
themselves usually first order predicates in mapping of a natural
language to the first-order logic), but there is a way around this.

I'am now considering various first-order logic related formalisms to
express my examples in. I might be using prolog, one of Description
logics (dl.kr.org) or semantic web related DAML+OIL (which is in fact
a description logic). I'll go about it by first building an ontology
of legal concepts from my domain
(see  http://www.fb10.uni-bremen.de/anglistik/langpro/webspace/jb/info-pages/ontology/ontology-root.htm
for introduction to ontologies)
and then use them when modelling procedural (workflow, decision
support) and substantial (expert system) parts of law.

I don't know how big your project is, but I think that it is realistic
for one person to tackle one of the problems you have enumerated
above, not all of them. Plus, AI is not a mature subject yet (probably
best reference is
Artificial Intelligence: A Modern Approach by Russell and Norvig, see
http://aima.cs.berkeley.edu/), so there might not be a full-blown
theory of
some field you want to investigate by the time you get there (say
natural language understanding, cobversion of nl to semantical models
etc.).

Nevertheless, AI and Law is a very interesting subject (see also AI
and Law conferences at http://www.cfslr.ed.ac.uk/icail03/)    :))

Sebastian


> > > [...] My plan is to research the area of AI and law,
> > > specifically by developing a prototype for decision
> > > support system adjusted to particular legislation etc.
> > > As i'm a lawyer rather than a technician i am not yet that
> > > skilled in the area of ai programming but hopefully i'll improve.
> > > The main question is what language (prolog or lisp)
> > > should i use to start the work?
> > > What i mainly want to do at the moment is to create a program
> > > with which you can converse in natural language and
> > > "build upon" it until it reaches rather high sophistication.
> > > When I achieve a program capable of rather general conversation
> > > (and also know more about ai) i plan to add the legal reasoning
> > > part.  What is your suggestion on how to go about this?
> > > (It's a four year project so i know this wont happen overnight).
> > > Ultimately i want to complement the program with some kind of good
> > > interface (possible face with lip sync / speech synthesis).
> > >
> > > Regards,
> > > S
From: Julian St.
Subject: Re: help with AI project
Date: 
Message-ID: <86eky8mcn7.fsf@jmmr.no-ip.com>
·········@yahoo.com (S White) writes:

> Hi,
> Just wanted to ask some advice. My plan is to research the area of AI
> and law, specifically by developing a prototype for decision support
> system adjusted to particular legislation etc. As i'm a lawyer rather
> than a technician i am not yet that skilled in the area of ai
> programming but hopefully i'll improve. The main question is what
> language (prolog or lisp) should i use to start the work? What i
> mainly want to do at the moment is to create a program with which you
> can converse in natural language and "build upon" it until it reaches
> rather high sophistication. When I achieve a program capable of rather
> general conversation (and also know more about ai) i plan to add the
> legal reasoning part. What is your suggestion on how to go about this?
> (It's a four year project so i know this wont happen overnight).
> Ultimately i want to complement the program with some kind of good
> interface (possible face with lip sync / speech synthesis).

Does anyone remember LiNC from Beneath a steel sky? Ok, it missed the
lip sync part, but comes pretty close...


Regards,
Julian
-- 
	Today I will hoard something I was denied as a child.
From: Matthias
Subject: Re: help with AI project
Date: 
Message-ID: <36wwubzkj9o.fsf@chagall.ti.uni-mannheim.de>
I would recommend to think about the AI algorithms first.  A good
general introduction is Russel and Norvig: "Artificial Intelligence: A
modern approach". It is one of the few introductory textbooks covering
probabilistic reasoning.  Once you know which general approach you
want to use (symbolic computation? logic programming? Bayesian
networks?)  you'll find that some languages offer advantages over
others.  You might also find that some of what you want to do is
really difficult (even for a four year project).

·········@yahoo.com (S White) writes:

> Hi,
> Just wanted to ask some advice. My plan is to research the area of AI
> and law, specifically by developing a prototype for decision support
> system adjusted to particular legislation etc. As i'm a lawyer rather
> than a technician i am not yet that skilled in the area of ai
> programming but hopefully i'll improve. The main question is what
> language (prolog or lisp) should i use to start the work? What i
> mainly want to do at the moment is to create a program with which you
> can converse in natural language and "build upon" it until it reaches
> rather high sophistication. When I achieve a program capable of rather
> general conversation (and also know more about ai) i plan to add the
> legal reasoning part. What is your suggestion on how to go about this?
> (It's a four year project so i know this wont happen overnight).
> Ultimately i want to complement the program with some kind of good
> interface (possible face with lip sync / speech synthesis).
> 
> Regards,
> S
> 
> [ comp.ai is moderated.  To submit, just post and be patient, or if ]
> [ that fails mail your article to <·······@moderators.isc.org>, and ]
> [ ask your news administrator to fix the problems with your system. ]

-- 
Dipl.-Inf. Matthias Heiler
Computer Science PhD student
www.cvgpr.uni-mannheim.de/heiler/
From: Matthias
Subject: Re: help with AI project
Date: 
Message-ID: <36wsmmnk7wp.fsf@chagall.ti.uni-mannheim.de>
I would recommend to think about the AI algorithms first.  A good
general introduction is Russel and Norvig: "Artificial Intelligence: A
modern approach". It is one of the few introductory textbooks covering
probabilistic reasoning.  Once you know which general approach you
want to use (symbolic computation? logic programming? Bayesian
networks?)  you'll find that some languages offer advantages over
others.  You might also find that some of what you want to do is
really difficult (even for a four year project).
From: Steven M. Haflich
Subject: Re: help with AI project
Date: 
Message-ID: <bkqi33$noi$1@mulga.cs.mu.OZ.AU>
S White wrote:

> ... The main question is what
> language (prolog or lisp) should i use to start the work?

If you really are trained in law, you might remember the trial law
advice that a barrister should never ask a question when he does
not already know the anser that will be forthcoming.

That advice is relevant here, in a perverse way.  Experienced
programmers know that the best language for nearly any task is
the language you know best.  Therefore, you already know the answer
to your question.

What?  You don't know _any_ programming language well yet?  Hmmm...

Another point of English common law is that precedence is nearly
everything.  I assume you have done your research on the forty or
so years of prior research?  There is much less of it than there
is common law, and google is free (unlike legal research tools)
so this task should not be too intimidating for you.

One place you could start is http://www.pandorabots.com/pandora but
this is just one special-putpose approach among many.

> What i
> mainly want to do at the moment is to create a program with which you
> can converse in natural language ...

This is rather ambitious, since most respondents to these lists are
incapable of it.

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]
From: Nameless
Subject: Re: help with AI project
Date: 
Message-ID: <bkqidk$oj6$1@mulga.cs.mu.OZ.AU>
"S White" wrote in message
·················@mulga.cs.mu.OZ.AU...
>
> Just wanted to ask some advice. My plan is to research the area
> of AI and law, specifically by developing a prototype for
> decision support system adjusted to particular legislation etc.
> As i'm a lawyer rather than a technician i am not yet that
> skilled in the area of ai programming but hopefully i'll improve.
> The main question is what language (prolog or lisp) should i use
> to start the work? What i mainly want to do at the moment is to
> create a program with which you can converse in natural language
> and "build upon" it until it reaches rather high sophistication.
> When I achieve a program capable of rather general conversation
> (and also know more about ai) i plan to add the legal reasoning
> part. What is your suggestion on how to go about this?
> (It's a four year project so i know this wont happen overnight).
> Ultimately i want to complement the program with some kind of
> good interface (possible face with lip sync / speech synthesis).

Both Prolog and Lisp handle NLP well, so it might boil down
to a question of personal preference. Here is one URL you
might find worth visiting:

    http://www.cogs.susx.ac.uk/local/books/

which provides (HTML) books on NLP in both languages.

(A request to the authors: PDF versions would be most
welcome, not everyone is comfortable reading bulk text
online.)

Otherwise, http://www.cogs.susx.ac.uk/lab/nlp/nlcl.html
should be interesting to you.

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]
From: Torbjorn Lager
Subject: Re: help with AI project
Date: 
Message-ID: <bkqif4$ood$1@mulga.cs.mu.OZ.AU>
·········@yahoo.com (S White) wrote in message news:<············@mulga.cs.mu.OZ.AU>...
> Hi,
> Just wanted to ask some advice. My plan is to research the area of AI
> and law, specifically by developing a prototype for decision support
> system adjusted to particular legislation etc. As i'm a lawyer rather
> than a technician i am not yet that skilled in the area of ai
> programming but hopefully i'll improve. The main question is what
> language (prolog or lisp) should i use to start the work? What i
> mainly want to do at the moment is to create a program with which you
> can converse in natural language and "build upon" it until it reaches
> rather high sophistication. When I achieve a program capable of rather
> general conversation (and also know more about ai) i plan to add the
> legal reasoning part. What is your suggestion on how to go about this?
> (It's a four year project so i know this wont happen overnight).
> Ultimately i want to complement the program with some kind of good
> interface (possible face with lip sync / speech synthesis).

You seem to think that creating a "program with which you can converse
in natural language" is simpler than creating a program that can do
legal reasoning. As a computational linguist, I believe it is rather
the other way around. Since you are a lawyer my advice would be to
start with the legal reasoning part. Prolog is an excellent tool for
exploring legal reasoning! (Although I would rather suggest XSB (a
logic programming language not exactly Prolog but more suitable for
the kind of knowledge representation and reasoning that you need -
check out http://xsb.sourceforge.net/).

A good place to start is Robert Kowalski's work on logic programming
for legal reasoning. Check out

  http://www-lp.doc.ic.ac.uk/UserPages/staff/rak/rak.html#LR

Good luck!

Torbjorn

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]
From: Martin Sondergaard
Subject: Re: help with AI project
Date: 
Message-ID: <bl325o$ed3$1@mulga.cs.mu.OZ.AU>
S White wrote :

> Hi,
> Just wanted to ask some advice. My plan is to research the area of AI
> and law, specifically by developing a prototype for decision support
> system adjusted to particular legislation etc. As i'm a lawyer rather
> than a technician i am not yet that skilled in the area of ai
> programming but hopefully i'll improve. The main question is what
> language (prolog or lisp) should i use to start the work? What i
> mainly want to do at the moment is to create a program with which you
> can converse in natural language and "build upon" it until it reaches
> rather high sophistication. When I achieve a program capable of rather
> general conversation (and also know more about ai) i plan to add the
> legal reasoning part. What is your suggestion on how to go about this?
> (It's a four year project so i know this wont happen overnight).
> Ultimately i want to complement the program with some kind of good
> interface (possible face with lip sync / speech synthesis).
>
> Regards,
> S

This is a very ambitious project.
Even though you have allowed yourself 4 years, I don't know if you can do it
in that time, because creating a program that can converse in natural
language is extremely difficult.

I'm working on such a project myself.  But I've been working on this project
for many years, and I may well be working on it for the next ten years too.
Natural Language Processing is not easy.

I recommend that you use Prolog rather than Lisp.  Prolog is said to be
better for NLP than Lisp.  Among other reasons, it has something called
"DCG grammar" features.  (In other words it has facilities for parsing
English sentences, to find out the grammatical structure of sentences.)

Torbjorn Lager wrote :
> You seem to think that creating a "program with which you can converse
in natural language" is simpler than creating a program that can do
legal reasoning. As a computational linguist, I believe it is rather
the other way around. Since you are a lawyer my advice would be to
start with the legal reasoning part.
<

I agree with Torbjorn.  Designing a program that can have a conversation is
difficult.

I recommend that you start by writing a less ambitious program,
an Expert System which has legal knowledge.  If you get this working well,
you will see the sort of logic that a Prolog program can do, and you will
have
some idea of the logic that would be needed by a program that can
understand English.  You can then decide if you want to take it further,
and try to write a program that can understand English.

I recommend that you start by learning Prolog, then write an Expert System
that has some legal knowledge.  I think you can do this in about a year.
(I think there is less chance of you getting a program working within four
years which can have an unstructured conversation.)

You can then build up on this program, to give it more legal knowledge, and
more complex behaviour.  If you wish, and if you have the time, you can add
NLP features to it, so that the user can enter simple sentences which the
Expert System responds to.

Instead of the user having an unstructured conversation with your program,
in English, the user is guided through a carefully structured interaction,
by the program.  That's what an Expert System does.

An Expert System finds out what the user wants to know, by asking a series
of questions.  It chooses its questions according to answers to previous
questions.  Eventually the user has fully specified what he want to know,
and the Expert System will then give him an answer.

Expert Systems are quite well understood by now.  Some books on Prolog
give examples of simple Expert Systems, and show how to write one.
There are also books on the subject of Expert Systems alone.

Natural Language Processing is not well understood.  We are still working
out how to do it properly.  A single book on Natural Language Processing
will normally only cover part of the problem.  You may have to read a number
of books, and work through the exercises, before you know what it would take
to write a program that can have a conversation.

--
Martin Sondergaard.




.

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]
From: Ray Dillinger
Subject: Re: help with AI project
Date: 
Message-ID: <bl80bb$csj$1@mulga.cs.mu.OZ.AU>
Martin Sondergaard wrote:
> 
> S White wrote :
> 
> > Hi,
> > Just wanted to ask some advice. My plan is to research the area of AI
> > and law, specifically by developing a prototype for decision support
> > system adjusted to particular legislation etc. As i'm a lawyer rather
> > than a technician i am not yet that skilled in the area of ai
> > programming but hopefully i'll improve. The main question is what
> > language (prolog or lisp) should i use to start the work? What i
> > mainly want to do at the moment is to create a program with which you
> > can converse in natural language and "build upon" it until it reaches
> > rather high sophistication. When I achieve a program capable of rather
> > general conversation (and also know more about ai) i plan to add the
> > legal reasoning part. What is your suggestion on how to go about this?
> > (It's a four year project so i know this wont happen overnight).
> > Ultimately i want to complement the program with some kind of good
> > interface (possible face with lip sync / speech synthesis).
> >
> > Regards,
> > S
> 
> This is a very ambitious project.
> Even though you have allowed yourself 4 years, I don't know if you can do it
> in that time, because creating a program that can converse in natural
> language is extremely difficult.

I think you may be setting a much higher goal for the intelligence 
of the AI than the original poster. 

It's not hard to build a chatterbot.  If you restrict yourself to 
patternmatching on the input and selecting and outputting a canned 
response, you can write the "engine" in a few weeks and then, in 
about six months of reading logfiles and debugging, you can create 
something that has pretty good fluency.  It won't know what people 
are saying, and it won't actually be much smarter than grass, but it
will have a bundle of linguistic responses and reflexes that make it
seem superficially capable.  

Such systems are popular as "toys" like eliza, but they are capable 
of being useful as desktop references and natural-language guides 
through a tightly-organized domain of knowledge.  I have built such 
useful systems professionally, in fact (and would cheerfully do it 
again if someone would like to hire me. :-) ).  

Now, if you actually want it to parse English and represent knowledge 
in some useful, internally-accessible format and know what someone
said, and access a database and use its knowledge of english grammar
and vocabulary to plan and output its own sensible responses, that's 
a whole different kettle of fish - at a wooly guess, *that* job is 
at least two orders of magnitude longer and three orders of magnitude 
harder. 

> I'm working on such a project myself.  But I've been working on this project
> for many years, and I may well be working on it for the next ten years too.
> Natural Language Processing is not easy.

Heh.  Me too.  I got tired of just building "useful chatterbots" at 
work and undertook a personal project to build the best handling of 
language I know how to do.  We should compare notes sometime.

> I recommend that you use Prolog rather than Lisp.  Prolog is said to be
> better for NLP than Lisp.  Among other reasons, it has something called
> "DCG grammar" features.  (In other words it has facilities for parsing
> English sentences, to find out the grammatical structure of sentences.)

I'm using a Lisp, but that's probably just because I happened 
to learn it first and I'm more comfortable with it.  Prolog is 
absolutely great for pattern-matching among a huge number of 
possibilities - which, basically, is what most parsing algorithms
wind up doing at some point.  If you think you can prioritize 
matching work better than prolog's native rule-matching engine,
you may want to use a different language.  If not, definitely 
do it in prolog. 

I'm using hidden markov models to try to predict the best 
grammar rule to try next and the most likely partial parse 
to try it on; we'll see if the gain is worth the overhead
and the coding sweat.  It may turn out that I should have 
just used Prolog. 
 
> Torbjorn Lager wrote :
> > You seem to think that creating a "program with which you can converse
> in natural language" is simpler than creating a program that can do
> legal reasoning. As a computational linguist, I believe it is rather
> the other way around. Since you are a lawyer my advice would be to
> start with the legal reasoning part.
> <
> 
> I agree with Torbjorn.  Designing a program that can have a conversation is
> difficult.

Well, ELIZA's not particularly difficult.  And an ELIZA-oid program 
with 1500-2500 pattern/response pairs can actually provide pretty 
good coverage of a narrow subject area even though it's not much 
smarter than grass.  It sounded like the OP might be satisfied with 
a reference system rather than something actually capable of 
comprehension and legal reasoning; if so, it's achievable. 
 
> You can then build up on this program, to give it more legal knowledge, and
> more complex behaviour.  If you wish, and if you have the time, you can add
> NLP features to it, so that the user can enter simple sentences which the
> Expert System responds to.

Absolutely the lifeblood of any program that handles natural language, 
or any expert system of any kind really, is logfiles.  You have to 
see how it does on inputs, identify where it's making mistakes, and 
go back and fix it.  Every solution will cause it to make different 
(usually more subtle) mistakes, until you get to a point where the 
mistakes are either more subtle than you can see, or more subtle than 
the mistakes it would make if you implemented the only "solutions" 
your design allows. 

Then you decide whether it's "good enough" for whatever your actual 
purpose is.  If it is, you call its behavior correct and shrink-wrap 
it.  After that, if you're satisfied with your design, you start on 
another with a different set of subject matter, or if you're not, it
means you've learned something about the limitations of your design,
so you start on a new one with a better design.  

I don't mean to make it sound hopeless; it's just the natural cycle 
of AI projects in general.  But it has to be understood that the
process is driven by mistakes, and it has to be understood that if
the domain of knowledge is at all hard (natural language and legal 
reasoning both easily pass this test) there will never be a day when 
the system makes no mistakes.  If you are very good, there may come 
a day when it makes no more mistakes than you.  

No one has ever been that good yet with natural language. 
 
> Instead of the user having an unstructured conversation with your program,
> in English, the user is guided through a carefully structured interaction,
> by the program.  That's what an Expert System does.

Some clients absolutely hate this kind of interaction though; they 
want to say what their problem is and get a direct response.  NL 
systems (whether chatterbot or "full" parsing systems) try to create 
a less-structured interaction that the program can still handle. 
 
> Natural Language Processing is not well understood.  We are still working
> out how to do it properly.  

That's putting it mildly.

> A single book on Natural Language Processing
> will normally only cover part of the problem.  You may have to read a number
> of books, and work through the exercises, before you know what it would take
> to write a program that can have a conversation.

Ummm.  Favorite books in the field:

_Speech and language processing_, by Jurafsky & Martin

_Natural Language Understanding_, by James Allen

My advice is to decide carefully what it is that you want to build. 
There is a space of applications that are both useful and possible
to build, even if they don't handle language in a sophisticated way.

Good luck!  

			Bear

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]
From: S White
Subject: Re: help with AI project
Date: 
Message-ID: <bldtfi$2pu$1@mulga.cs.mu.OZ.AU>
The previous poster is correct in that most of you seemed to have
overinterpreted my desire to have an engine able to use natural
language. What i was thinking about wasnt hal 9000 but just the
ability to utilize natural language in actual commands rather than for
instance  decision(X, case2) or whatever. the main focus is on the
legal side of things of course considering it's a doctoral project at
an actual university, not some hobby i suddenly decided to come up
with. though i admit i'm not very good at technical issues. the main
interest is to study the way these things are constructed so i can
speak a similar language to technicians i'll be working with later on.
so this is a sort of collaboration one could say, but i think there is
no way of reaching good results if i'm not rather skilled at the
system development part.

Regards,
S

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]
From: ···@kymhorsell.com
Subject: Re: help with AI project
Date: 
Message-ID: <blduos$57g$1@mulga.cs.mu.OZ.AU>
In comp.lang.prolog S White <·········@yahoo.com> wrote:
> The previous poster is correct in that most of you seemed to have
> overinterpreted my desire to have an engine able to use natural
> language. What i was thinking about wasnt hal 9000 but just the
> ability to utilize natural language in actual commands rather than for
> instance  decision(X, case2) or whatever. the main focus is on the
> legal side of things of course considering it's a doctoral project at
[...]

A simple "NL like" interface can be worked up simply  by defining
some prolog operators. After all, one of the key ideas behind solving
new problems is defining a nice notation to explain it to yourself in --
and that's how, when, where and why the op/3 predicate is. 
[All English parsers please core dump now].

E.g. you might define appropriate operators such as "is_a", "a", and "the"
so you can type _in Prolog_ things like:
	assert(elephant is_a animal).
	assert(jumbo is_a elephant).
or
	Who is_a animal.
or
	Something is_a animal :- Something is_a elephant.
or
	jumbo is_a TellMe.

Define some higher-level "query" primitives to taste (generally
to taste like something that underlise SQL-type queries, with joins
and what-not).

Check out some intro "knowlege", "AI", or "database" books that
list "Prolog" in the keyword list (streering clear of those that may spell
it "PROLOG" or "prolog" or even "ProLog").

[ comp.ai is moderated.  To submit, just post and be patient, or if ]
[ that fails mail your article to <·······@moderators.isc.org>, and ]
[ ask your news administrator to fix the problems with your system. ]