Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[semi-OT] possible benefits from training in Scheme programming in patent translation

24 views
Skip to first unread message

Benjamin L. Russell

unread,
Aug 19, 2009, 8:12:39 AM8/19/09
to
Today, I came across an interesting phenomenon in which exposure to
Scheme programming helped with technical translation of part of a
patent specification.

Since the material is classified, I can only reveal the structure, and
not the content, but basically, there was a document containing a
"claim" (a sentence in a specification which specifies what is being
claimed in the patent being applied for) which somebody had slightly
mis-translated from English to Japanese, and which was being amended.

The original English clause in the claim had the following structure:

"... an A in communication with a plurality of B, said A configured to
generate a C signal, configured to cause at least one of said
plurality of B to output a said D, said C signal based at least in
part on said E signal."

Unfortunately, whoever translated that clause from English to Japanese
apparently left out the "said A configured to generate a C" portion.

Then this mis-translated Japanese translation of the original English
clause was amended, but was never translated back to English.

Then this amended Japanese clause was re-amended, and I was asked to
"apply" the re-amendment to the English original. The re-amended
Japanese clause then had the following structure (after I finally
figured out the structure):

"... an A in communication with a plurality of B, said A configured to
generate a C signal, configured to cause the C coupled to said F so
that a positional relationship, for the E which has sent the E signal,
corresponding similarly to a positional relationship between the E
which has sent the E signal and the G of said plurality of B to output
a said force associated with the strength detected by the E, said B
signal based on said E signal."

The first aspect that I noticed was that the previous amendment had
never been translated, requiring me to fill in the details.

However, then I noticed that this previous amendment had itself been
based on a mis-translated original.

In order to figure out which portion was missing from the translation
of the original clause, I needed to map portions of the original
English clause to their Japanese equivalents, but since the structure
itself was not written to reflect the structure of the original
English clause, I then needed to break up the original English clause
into its structural components.

At first, this process seemed very tedious and difficult, until I
noticed that treating these structural components in the clause as if
they were S-expressions in a Scheme program, and then mapping
equivalent components of the English clause to semi-corresponding
components of the Japanese (mis-)translation speeded up and simplified
this process greatly, even though the correspondence was not exact.

For some reason, I have discovered that this kind of mental
equivalence seems to proceed much more smoothly between S-expressions
in Scheme programs and claims in patent documents than between other
kinds of expressions in other functional programming languages and the
same claims in patent documents. For example, I have not had similar
experiences with finding equivalences between expressions in even
Haskell programs and the claims in patent documents; Haskell
expressions seem to be more equivalent to mathematical equations than
to claims in patent documents.

Therefore, it seems that exposure to the Scheme programming language,
in particular, can help in training non-programmers to think
structurally in analyzing expressions in natural language, which can
have benefits in translating claims in patent documents in such a
manner that they can be more easily and clearly amended.

Perhaps MIT should reinstate Scheme and 6.001, and get rid of Python
and the new C1. Somehow I feel that MIT is risking creating a new
generation of idiots by getting rid of Scheme and SICP from their
curriculum just for the ostensible reason that the recursive style of
programming does not reflect the way that programming is actually
conducted in industry. Students do not learn programming just to
program; learning programming also has important ramifications for the
structural thought processes underlying other technical fields, even
those that do not seem superficially related (such as patent
translation), and it seems that watering down a core programming
course for such ostensible reasons undermines the crucial patterns of
thinking which are cross-applicable to such other technical fields as
well.

-- Benjamin L. Russell
--
Benjamin L. Russell / DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile: +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto."
-- Matsuo Basho^

Bakul Shah

unread,
Aug 19, 2009, 10:55:32 AM8/19/09
to
Benjamin L. Russell wrote:
> At first, this process seemed very tedious and difficult, until I
> noticed that treating these structural components in the clause as if
> they were S-expressions in a Scheme program, and then mapping
> equivalent components of the English clause to semi-corresponding
> components of the Japanese (mis-)translation speeded up and simplified
> this process greatly, even though the correspondence was not exact.
>
> For some reason, I have discovered that this kind of mental
> equivalence seems to proceed much more smoothly between S-expressions
> in Scheme programs and claims in patent documents than between other
> kinds of expressions in other functional programming languages and the
> same claims in patent documents. For example, I have not had similar
> experiences with finding equivalences between expressions in even
> Haskell programs and the claims in patent documents; Haskell
> expressions seem to be more equivalent to mathematical equations than
> to claims in patent documents.

Some examples to show this equivalence would be nice.

Have you considered the inverse mapping? Then you can convert your Scheme
programs into patent claims. I'd better patent that!

(lambda ...) => A method

etc.

Pascal J. Bourguignon

unread,
Aug 19, 2009, 11:14:17 AM8/19/09
to
Bakul Shah <bakul+...@bitblocks.com> writes:

Including previous patent checking, and prior art?

--
__Pascal Bourguignon__

Bakul Shah

unread,
Aug 19, 2009, 1:54:30 PM8/19/09
to

I was kidding. Russell's equivalence is an amusing/serious idea.
Somewhat along the same lines, every early April I dream that some
day all tax laws will be formally specified in Scheme.

Pascal J. Bourguignon

unread,
Aug 19, 2009, 3:50:30 PM8/19/09
to
Bakul Shah <bakul+...@bitblocks.com> writes:

And I was dreaming. If only we could easily patent all our code, this
would drown the patent office...

--
__Pascal Bourguignon__

qo...@purdue.edu

unread,
Aug 19, 2009, 6:48:32 PM8/19/09
to
> Somewhat along the same lines, every early April I dream that some
> day all tax laws will be formally specified in Scheme.

Sergot, M.J., Sadri, F., Kowalski, R.A., Kriwaczek, F., Hammond, P.,
and Cory,
H.T., The British Nationality Act as a Logic Program, Communications
of the
ACM, 29(5):370-386, May 1986.

http://www.doc.ic.ac.uk/~rak/papers/British%20Nationality%20Act.pdf

Benjamin L. Russell

unread,
Aug 20, 2009, 1:42:34 AM8/20/09
to
On Wed, 19 Aug 2009 07:55:32 -0700, Bakul Shah
<bakul+...@bitblocks.com> wrote:

>Benjamin L. Russell wrote:
>> At first, this process seemed very tedious and difficult, until I
>> noticed that treating these structural components in the clause as if
>> they were S-expressions in a Scheme program, and then mapping
>> equivalent components of the English clause to semi-corresponding
>> components of the Japanese (mis-)translation speeded up and simplified
>> this process greatly, even though the correspondence was not exact.
>>
>> For some reason, I have discovered that this kind of mental
>> equivalence seems to proceed much more smoothly between S-expressions
>> in Scheme programs and claims in patent documents than between other
>> kinds of expressions in other functional programming languages and the
>> same claims in patent documents. For example, I have not had similar
>> experiences with finding equivalences between expressions in even
>> Haskell programs and the claims in patent documents; Haskell
>> expressions seem to be more equivalent to mathematical equations than
>> to claims in patent documents.
>
>Some examples to show this equivalence would be nice.

How about the following example (following this paragraph)? Most
readers of this newsgroup do not read Japanese; therefore, the
following example assumes that another translator has already
translated a patent claim from Japanese to English, and that I need to
check the translation for accuracy. In order to do so, I need to
break down the claim into its semantic components and determine
whether the semantics of the translation and the original are
equivalent. Here is a contrived example, assuming that somebody has
developed an _in vitro,_ as opposed to _in vivo,_ remote control
device and receptor that can be optionally mounted on the ear
(similarly to the ear-mounted transmitter/receivers worn by Agents in
the motion picture saga _The Matrix_) and used as a controller for a
video gaming device; please note that since I am not actually writing
a Scheme program, but only using thought patterns derived from writing
S-expressions in Scheme programs, this is merely pseudo-Scheme, not
actual Scheme:

What is claimed is:

1. An _in vitro_ remote-control device, the device comprising:
a mounting unit for mounting the remote-control device on a
portion of the head of a user;
a transmitter unit, further comprising:
a neurotransmitter unit transmitting neural impulses to a
brain of the user;
a neuro-digital conversion unit converting neural
impulses to digital signals;
a receiver unit, further comprising:
a neuroreceptor unit receiving neural impulses from the
brain;
a digital-neuro conversion unit converting digital
signals to neural impulses; and
a power source unit converting thermal radiation from brain
cells into electricity, the electricity powering the remote-control
device;
wherein:
the transmitter unit transmits digital signals in response to
neural impulses; and
the receiver unit transmits neural impulses in response to
digital signals.

The above-mentioned claim translates roughly into my personal variety
of pseudo-Scheme as follows (apologies for any deviations from the
syntax or semantics of actual Scheme):

(claim-define (_in-vitro_-remote-control-device mounting-unit
transmitter-unit receiver-unit power-source-unit)
(claim-comprising
(mounting-unit
(lambda (head user)
(mount head user)))
(transmitter-unit
(lambda (neurotransmitter-unit
neuro-digital-conversion-unit)
(claim-define (neutrotransmitter-unit
neural-impulses brain)
(transmit neural-impulses brain user))
(claim-define (neuro-digital-conversion-unit
neural-impulses digital-signals)
(convert (neural-impulses
digital-signals))))
(receiver-unit
(lambda (neuroreceptor-unit
digital-neuro-conversion-unit)
(claim-define (neuroreceptor-unit neural-impulses
brain)
(receive neural-impulses brain))
(claim-define (digital-neuro-conversion-unit)
(convert digital-signals
neural-impulses))))
(power-source-unit
(lambda (thermal-radiation brain-cells electricity)
(power-convert thermal-radiation electricity
brain-cells)))))
(claim-wherein
(transmitter-unit
(lambda (digital-signals neural-impulses)
(transmit digital-signals neural-impulses)))
(receiver-unit
(lambda (neural-impulses digital-signals)
(transmit neural-impulses digital-signals)))))

This pattern of thinking can greatly simplify verifying equivalence
between an English translation of a claim having a complex structure
and the original Japanese claim.

>
>Have you considered the inverse mapping? Then you can convert your Scheme
>programs into patent claims. I'd better patent that!
>
>(lambda ...) => A method
>
>etc.

Unfortunately, computer programs cannot be patented in Europe;
therefore, it would be relatively easy for a competitor simply to
market a competing product using identical technology in Europe, thus
significantly defeating the purpose of the patent.

qo...@purdue.edu

unread,
Aug 20, 2009, 7:55:53 AM8/20/09
to
> (claim-define (_in-vitro_-remote-control-device mounting-unit
> transmitter-unit receiver-unit power-source-unit)
> (claim-comprising
> (mounting-unit
> (lambda (head user)
> (mount head user)))

Montague, R., English as a Formal Language. In: Bruno Visentini (ed.):
Linguaggi nella società e nella tecnica. Mailand 1970, 189-223.

Dirk van Deun

unread,
Aug 20, 2009, 3:45:52 PM8/20/09
to
Benjamin L. Russell (DekuDe...@yahoo.com) wrote:

: Therefore, it seems that exposure to the Scheme programming language,


: in particular, can help in training non-programmers to think
: structurally in analyzing expressions in natural language, which can

You do realize that a very similar argument is often made about studying
Latin to learn to think structurally and learn to analyze language ?

Scheme as the new Latin (and Haskell as the new Ancient Greek ?), I must
say the idea does have some appeal. :-)

Dirk van Deun
--
Ceterum censeo Redmond delendum

qo...@purdue.edu

unread,
Aug 20, 2009, 4:02:42 PM8/20/09
to
> Scheme as the new Latin (and Haskell as the new Ancient Greek ?), I must
> say the idea does have some appeal. :-)

http://www.ece.purdue.edu/~qobi/papers/ypl.text

0 new messages