• Aucun résultat trouvé

Gustave, ses pompes et ses œuvres

N/A
N/A
Protected

Academic year: 2022

Partager "Gustave, ses pompes et ses œuvres"

Copied!
44
0
0

Texte intégral

(1)

Gustave, ses pompes et ses œuvres

G´erard Huet

INRIA

GGJJ Conference, G´erardmer, January 2011

(2)

Story of a function

What is a function ?

it may mean set-theoretical graph, like in crazy Bourbaki

it may mean computable function

it may mean partial computable function

it may mean algorithm

(3)

Algorithm

algorithm mean computable by a sequential process

it means programmable in CDS

(4)

CDS

CDS = Concrete Data Structures (Berry-Curien, 1982).

It builds on Kahn (IFIP 1971)

And on Vuillemin 1973, L´evy 1976, Kahn-MacQueen 1976

And then on Kahn-Plotkin 1978, Berry 1979, Berry-L´evy

(5)

Those were the days

(6)
(7)
(8)

Where is the G key?

(9)

More on CDS

The slogan of CDS was “the programming language of the 90’s”

It was more than 30 years ahead of its time

What Nag¯arjuna has to say about time

“Ainsi le futur vient en premier et le pass´e apr`es”

What G´eg´e has to say about time

“Tout se passe au mˆeme moment, mais dans le bon ordre”

(10)

Headache

(11)

A function’s story

Q: What function is it ?

A: Gustave’s function

Q: Is it an interesting function ?

A: Not really

Q: Then, is it an algorithm ?

A: Neither

(12)

Definition of Gustave’s fonction

GG(x,1,0) =>

GG(0, x,1) =>

GG(1,0, x) =>

(13)

Discussion

The associated function is semi-trivial

Its value is always >

But it is not total (even on {0,1})

And thus GG(A,B,C) is not easy to compute in a top-down manner

The problem is: which of A,B,C should I compute on first ?

Is parallel evaluation unavoidable?

(14)

Plotkin already showed this with parallel or?

OR(x,1) = 1

OR(1,x) = 1

OR(0,0) = 0 – needs parallel evaluation as well

(15)

Counter-objection

Parallel OR is unstable

It is not orthogonal, it admits critical pairs

Gustave’s function is stable

but it is not Vuillemin sequential

Thus it is a much more subtle computational paradox

(16)

Oh, really ?

(17)

Why is it called Gustave’s function ?

Because I called it so !

A pure gratuitous act A Gustave function act

A proof of existence

(18)

Historical details

Gustave surfaced in my 1985 course notes “Deduction and Computation”. These notes were published first in

“Fundamentals in Artificial Intelligence”, Eds. W. Bibel and Ph. Jorrand, Springer LNCS 232 (1986) pp. 39-74.

Also presented at the International Summer School on Logic of Programming and Calculi of Discrete Design, Marktoberdorf, Aug. 86. Published in “Logic of Programming and Calculi of Discrete Design”, Ed. M. Broy, NATO ASI Series, F-36, Springer-Verlag 1987, 305-342.

Also in INRIA Research Report RR-513, 1986, easily found on the HAL free archive by Googling ‘Gustave function’.

(19)

Original citation (1985)

There I say, as a commentary to theStandardization theorem:

“This theorem suggests it can be used to define acomputation rule, usable to drive an interpreter computing ‘lazily’. However, this is not true, since the standard derivation in a derivation class is not simply a function of its starting term. For instance, considerGustave’s function, an example due to G.G. Berry:

...”

Killing two birds with one stone, by revealing in one sentence two nicknames of G´erard.

This also appeared in my CMU Course notes “Formal

Structures for Computation and Deduction”, May 1986, p. 94.

The bait was set, I only had to wait. This took 5 years.

(20)

Some of my students at my CMU class in 1985

Boris Trakhtenbrot

Dana Scott

Rick Statman

John Reynolds

Thierry Coquand

Daniel Leivant

Steeve Brookes

Christine Paulin

Philippe Le Chenadec

and Jean-Jacques L´evy was guest lecturer.

(21)
(22)

Gustave reappears in publication in 1991

This is unique so far. A proper quotation:

“This is a variant of ‘Gustave’s function’ (attributed to Berry [11] by Huet [9]);”. In “Towards a Theory of Parallel

Algorithms on Concrete Data Structures”, by S. Brookes and S.

Geva, TCS, June 1991.

where indeed, in the bibliography, is listed:

[9] Huet, G., Formal Structures for Computation and

Deduction, Class notes for graduate course at CMU, May, 1986.

(23)

A perfect hoax

From then on, my tracks are lost. Nobody knows anymore the origin of Gustave’s function, not even Steve Brookes, in spite of his ‘smoking gun’ paper.

(24)

A long history of plagiarism

This list of anonymous quotations reads like a Who’s who of theoretical computer science:

“Bool be (a variation on) Gustave’s function (due to Berry)” in “Stable and Sequential Functions on Scott domains”, by S. Brookes and S. Geva, CMU course notes CS-92-121, June 1992.

“The Gustave function is an example of a function which is stable but not Vuillemin Sequential”. In Course notes EE290N, Berkeley U., Edward A. Lee, Oct 1996.

“The Gustave function. This fantastic counterexample is due to G. Berry∼1978.” ... “The case of Gustave is much more delicate: Ehrard found a beautiful

generalization of coherent spaces, hypercoherences, which manages to kill Gustave’s function, ...” in Jean-Yves Girard “On the meaning of logical rules I, Jan. 98”.

(25)

By 1999 it had become classic in semantics publications

“Classically, this condition excludes the parallel-or function, Berry’s Gustave function, etc. [Vui73, KP78, Cur86]”. In “Concurrent interaction games” by Samson Abramsky, 1999.

“A more subtle example was given by Berry and is known as Gustave’s function, or Berry-Kleene function (as Kleene had encountered a variant of this function too):”. In P. L.

Curien, “Symmetry and interactivity in programming”, Oct. 2001.

Wrong terminology: “BK(x,y,z) (footnote: Another name that is used for this function is gustave)”. In Roberto M.

Amadio and Pierre-Louis Curien, “Domains and Lambda-Calculi”, Cambridge U. Press, 1998.

“Berry’s ‘Gustave’ functions,”. In “Softness of Hypercoherences and MALL Full Completeness” by Richard Blute, Masahiro Hamano and Philip Scott, Nov.

2003.

(26)

By 2007 Even GG is forgotten!

“In fact there is a PS, the Gustave one, which is the proof theoretical counterpart of the Gustave function G”. In “A Characterization of Hypercoherent Semantic Correctness in Multiplicative Additive Linear Logic” by P. Tranquilli, 2007.

“Undefinability of Gustave’s function”. In “Reduction under Substitution”, Jo¨org Endrullis and Roel de Vrijer, July 2008.

“Gustave’s function:” in “Sur la λ-d´efinissabilit´e”, A.

Bucciarelli, Dec. 2009.

Now Gustave’s function is autonomous. Gustave made History. People are proud of attributing new notions to Gustave.

(27)

Freudian analysis of the Gustave phenomenon

The World (of researchers in TCS) according to Girard.

According to Girard, our professional world is divided into three categories of people:

The fantasticones, who are proud of attributing new paradoxes to Gustave, obeying their instinct of pleasure.

The beautifulones, who try to kill Gustave with

hypercohences or whatever, obeying their instinct of death.

The ugly ones, who gesticulate with Broccoli logic.

Similar to Sergio Leone’s classification: The Good, the Bad and the Ugly.

(28)

I hate the style of this talk

(29)

Who invented Gustave’s function?

We abstract Gustave’s function to its essence.

Definition (Huet 2011). AGustave function over some domain is a stable function that is not sequential.

(30)

The Gustave function inventor

(31)

The Gustave function inventor

Marie Jean Antoine Nicolas de Caritat Marquis de Condorcet

(17 September 1743 – 28 March 1794)

(32)

Nicolas de Condorcet

Glorious actor of the French Revolution

Was the main intellectual leader as Geometer Academician

Was a democrat in favor of universal suffrage

Including jews, who should be counted as citizens

Including niggers, who should be freed

Including women, who should have equal rights to men

Asked for free laic education irrespectively of class

Was against the death penalty as a matter of principle

Hence wanted the King to be ‘only’ served a life sentence at the galleys

Hence was denounced as a traitor, jailed and murdered in his cell

(33)

Condorcet’s temper

Condorcet was atrabilious and bad-tempered

He could not stand jerks

He would put them in their place, publically

Thus had lots of ennemies

He calmed himself down by doing maths

(34)

Condorcet as a mathematician

He was a professional mathematician

He was a friend of d’Alembert and Lagrange

He corresponded with Euler

Believed that social reforms ought to be scientifically grounded

Thus studied voting processes

Was a precursor of Game Theory

Proved the Jury Theorem

Invented the “Condorcet paradox”

(35)

The Condorcet paradox (1785)

Assume three candidates, A, B and C postulate for a position.

Voters submit linear orderings of{A,B,C} as votes. Asocial choice functionselects a winner as a function of the votes.

When preferences are inconsistent, every choice function will make a majority of voters unhappy as contradicting their vote.

(36)

The Condorcet paradox with 3 voters

Voter 1 prefers A to B to C.

Voter 2 prefers B to C to A.

Voter 3 prefers C to A to B.

No matter who is selected, 2/3 of the voters will be unhappy!

It is not always possible for a social choice function to pick a candidate that will beat all other candidates in pairwise comparisons.

A Condorcet winner is one that wins all such votes.

The Condorcet paradox exhibits a Gustave function.

(37)

Ballot theory

LetC={c1, ...cn} be the set of candidates,V ={v1, ...v2N+1} the set of voters.

We associate to each voterv∈V his ballot as a total ordering

>v on C. Thusa >v biff v ranksabeforeb.

We extend these orderings toV by majority:

a >V b ≡ |{v∈V|a >v b}|> N.

We say thatcbeatscandidate c0 ifc >V c0, and thatc defeatsc0 iffc >V c0 and for anyc00 c0>V c00⇒c >V c00.

A Condorcet winner is>V-maximal:

W(w)⇔ ∀c∈C w=c∨w >V c.

We defineGT(c, c0) = 1ifc >V c0,0ifc0 >V c,⊥ ifc=c0. LetS={s1, ..., sp}be obtained fromC by recursively removing all defeated candidates.

We define the functionG∈Bp→U, whereB ={0,1}and U ={⊥,>}, by: G(b1, ..., bp) => ⇔ ∃s∈S bi=GT(s, si).

(38)

Gustave Condorcet

The functionG is extended by monotonicity. It is stable because candidates inS are mutually undefeated, and their defining clauses are thus incomparable. If there exists a Condorcet winner, it defeats all others,p= 1, and Gis the constant function defined byG(⊥) =>. Otherwise,G is not sequential at⊥. Indeed, nosinS may be an index, since its defining clause refutes the fact. Thus any vote which does not admit a Condorcet winner defines a Gustave function.

Indeed, the Condorcet paradox givesS ={A, B, C} with A >V B,B >V C and C >V A,p= 3, and hereG=GG.

Furthermore, ifA and B do not defeat each other, with say A >V B, there must existC unique such that B >V C and C >V A and thus GGis the only Gustave function definable by voting paradoxes.

This should be expected,GGis clearly unique!

(39)

Perrin’s statue of Gustave Condorcet

Jacques Perrin (franais, 1847-1915: Condorcet (1894/1991), statue de bronze, Quai Conti, VIe arrondissement, Paris, France. Une premire statue, leve le 14 juillet 1894, l’occasion du bicentenaire de la mort de Condorcet, a t dtruite en 1943, un second tirage a t install son ancien emplacement en 1991 dans le cadre des clbrations du bicentenaire de la Rvolution franaise.

Courtesy of http://commons.wikimedia.org/.

(40)

Implementing democracy according to Condorcet

Condorcet proposed to implement democracy as a 3 step process. First the electors vote. Then the social process selects a winner. Then we verifiy that the social process is not tyrannic by running the winner through a consensus checker.

The Condorcet paradox exibits a bug in the democratic process based on a notion of consensus demanding of a winner to be Condorcet compliant. When there is no Condorcet winner, any candidate is at best non defeated, but would be beaten by some other undefeatable one in a binary election.

Thus new democratic processes must be coined, in order to avoid electoral deadlocks. For instance, dictatorship is fine, and avoids the cost of running elections.

(41)

Gustave won the Nobel Prize

For elections with 3 or more candidates, there is no social choice function that satisfies 3 properties:

Non Dictatorship

Unanimity (Pareto Efficiency)

Independence of Irrelevant Alternatives

Arrow received the Nobel Price in 1972 for this Gustave Function!

Gustavology is a promising new field.

But beware of Gustave Broccoli !

(42)

The Goa theorem

G. Berry, G. Huet & J. Vuillemin (Goa, Dec. 1989)

Life is a Gustave function.

(43)

Yes, we can !

(44)

Thanks

to Philippe Flajolet who coined Gustave forα-conversion of G´erard

to G´erard Berry and Jean-Jacques L´evy for their fundamental contributions to the theory of computation and many happy memories of interaction

to Thierry Coquand who noticed the Gustave character of Condorcet

Références

Documents relatifs

The resulting estimator is shown to be adaptive and minimax optimal: we establish nonasymptotic risk bounds and compute rates of convergence under various assumptions on the decay

To represent the linear fractional order system of (10) by a linear time-invariant system model so as to derive their closed form impulse and step responses,

As stated in the beginning, the real purpose of these notes is not to simply repeat the standard calculation of the derivative of the logarithm function, but to replace the

A Tangent May Not Exist The graph of a function f that is continuous at a number a does not have to possess a tangent line at the point A tangent line will not exist whenever the

Theorem 2.24 Suppose f is a continuous real valued function defined on a closed and bounded interval [a, b]..

Parashar and Choudhary [27] have intro- duced and examined some properties of four sequence spaces defined by us- ing an Orlicz function M, which generalized the well-known

Gromov’s argument in [3] is by embedding a simply connected solv- able Lie group into SL n (R), and proving that there is an “exponentially Lipschitz retraction” of SL n (R) onto

Psychology as the Science of Human Being : The Yokohama