algorithms for concepts in the theory of cooperative games · apl andgames algorithms for concepts...

95
APL and Games Algorithms for Concepts in the Theory of Cooperative Games Joachim Rosenm¨ uller 1 1 Institute of Mathematical Economics IMW University of Bielefeld D–33615 Bielefeld Germany May 31, 2011

Upload: others

Post on 24-May-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

APL and Games

Algorithms for Concepts in the Theory ofCooperative Games

Joachim Rosenmuller1

1Institute of Mathematical EconomicsIMW

University of BielefeldD–33615 Bielefeld

Germany

May 31, 2011

Page 2: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

II � �

We present a coarse untroduction into “A Programming Language” strem-lined as to lead to Programs for Cooperative Games and their solution con-cepts

Page 3: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Contents

1 Preliminaries 1

1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Arrays 5

1 Definitions and “shape” . . . . . . . . . . . . . . . . . . . . 7

3 Functions 13

5 Encode and Decode . . . . . . . . . . . . . . . . . . . . . . . . 14

8 Grade Up and Grade Down . . . . . . . . . . . . . . . . . . . 20

9 The Dyadic Transposition � . . . . . . . . . . . . . . . . . . . 23

4 Operators 29

1 Ravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2 Outer Product . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3 Inner Product . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5 The definition of functions: Programming 41

1 The Definition of Functions – Programming in ��� . . . . . 42

6 The Coalitional function 47

1 Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

7 Cephoids 55

III

Page 4: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

IV � Contents �

1 Faces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

2 Duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

3 1st Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4 2nd Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

5 3rd Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Bibliography 91

Page 5: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 1

Preliminaries

aplc1

This chapter constitutes a coarse introduction. Basically we assume that thereader is familiar with some basic procedures or operations as offered in any��� textbook. Thus, this chapter does not serve as a foundation for thebeginner; we claim neither completeness nor self evidence.

1

Page 6: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

2 � Preliminaries � Chapter I �

1 Basicsaplc1s1

We do not really want to give an introductory course to ��� . Therefore,these preliminaries consist of some rough notes concerning the basic opera-tions or functions. It is hence tacitly assumed that the reader is informedabout basic features of ��� that can be acquired from any textbook andvia trial and error.

��� is A (very condensed) Programming Language. It is based on a set ofsymbols/fonts that reflect functions or operators as well as the arguments ofsuch finctins in a wide sense. Here is the ��� keyboard.

���������� �

�������������Æ

����DZ!�"#$%&'

()*+,-./0123

456789:;<=>?

@ABCDEFGHIJK

LMNOPQRSTUVW

XYZ[\]�^_`ab

cdefghijklmn

�opqrstuvwx

�yz{|}~����

����������

Elementary algebraic operation look quite familiar on first sight. We have(the program answering on the left margin):

��

�� ��

��

Page 7: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Basics � 3

� Æ �

�w�

� � �

��

�=�

��

�=`��a

�=`� ��a

�w�

However, it is advisable to regard operations like � as functions on reals orintegers, cartesian products of reals, etc. E.g., � : � × � → � suggestsan obvious function in 2 variables; of course the computer does not know“reals”, but for our purpose it is convenient not to emphasize this deficiency.

Page 8: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics
Page 9: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 2

Arrays

aplc2

Within this chapter we discuss arrays. Basically, an array is a variable.Intuitively, an array is a higher dimensional matrix; slightly more formally afunction from ( the Cartesian product of) finitely many index sets into thereals. (Yes, we recall that there are no reals in the computer...). An indexset is typically of the form

I = [1, n] := {1, . . . , n} ;

for some n ∈ � which we conveniently call an “interval”. In other words, weare just counting the rows, columns, sheaves, .... of K–dimensional matrixby means of appropriate intervals.

Here a problem may occur as we sometimes want to represent functions onthe Cartesian product of arbitrary finite index sets. As ��� does not knowsuch generalized matrices, we have to take care that a suitable bijection isintroduced which allows to treat our non–interval–like index set via somesuitable interval. For the user, this niceties may not be relevant, it is clear tohim how a generalized matrix has to look like. For Mathematical precisionone may think otherwise.

Arrays are the main substrate of ��� . They can easily be introduced byassigning values to the various entries via the “shape” operation. They caneasily be handled, i.e., extended, mutilated, composed, or partially adjustedby suitable operations. They have the usual structure assigned to themby elementary linear algebra, like we may add them, multiply them with aconstant, etc.. Also, there are several very general versions of a product oftwo arrays.

Moreover, turning to functions more involved, arrays serve as arguments of

5

Page 10: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

6 � Arrays � Chapter II �

such functions. We will be able to program whatever a “function” could beand, as rule, it will be a function defined on a certain class of arrays.

Also, as arrays may have numerical or literal entries, we can manipulate textvariables that are certain arrays and convey messages, instructions, explana-tions, headers, ..... etc. during the process of programming or computing viaa program.

Page 11: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Definitions and ‘‘shape’’ � 7

1 Definitions and “shape”aplc2s1

We consider “intervals”

I = [1, n] := {1, . . . , n} (n ∈ �) ;

in addition we shall use the intervall

I = [1, 0] := ∅

in order to indicate the empty set.

Definition 1.1. Let I1, . . . , IK be intervals. An array (of degree K) is amapping

A : I1 × . . .× IK → � .

For convenience, the case K = 0 is included. An array

A :0∏

L=1

IL → �

is by convention a real number.

Note that ��� distinguishes between the real number a and the one di-mensional vector (a). The first object is given by the (mapping, function,aray)

A :0∏

L=1

IL → � , A[·] = a ,

while the second one is

A :1∏

L=1

IL → � , A[1] = a .

In particular, for K = 1, the array

K := [1, 0]→ �

is an array of degree 1 called zilde.

Page 12: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

8 � Arrays � Chapter II �

Remark 1.2. The range of an array A can be the set ALPHABET :={CHARACTERS} instead of �. That is, the above definition should be aug-mented by an analogous definition of

C :

K∏L=1

IL → ALPHABET.

Definition 1.3. we shall use the following notation:

AK := {A A is a (numerical) array of degree K, }CK := {C C is a (character) array of degree K.}

Remark 1.4. 1. Note that the elements of A0,A1,C0, and C1 are the onlyones that ��� accepts directly via tha keyboard; we may use “assignment”← to simultaneously create an aray A ∈ A0 and attach a value to it. Sim-ilarly, we assign the values of a vector by using ← and typing the vectoras a string of numbers with emptyspaces in between. This “geometrical”representation of a vector is quite in accordance with the everyday usage inMathematics a = (a1, a2, a3, . . . , an).

However, in order to enter arrays of higher degrees, an appropriate procedurewill be necessary.

2. Real numbers and characters are arrays of degree 0, hence there is a formalidentification or “imbedding” indicated by

A0 = �, C0 = ALPHABET

3. Naturally, arrays of degree 2 are called matrices. While we regard them asmappings

A := I1 × I2 → �

orC := I1 × I2 → ALPHABET,

the computer (again in accordance with everyday Mathematics usage) writesthem as two dimensional arrays. The procedure to induce the maschinedoing so will be presented immediately.

Example 1.5.

L2� � � �� � �w��� `��a

L

� � � �� � �w��� �w����������

L �

Page 13: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Definitions and ‘‘shape’’ � 9

� � �� �� � �w��� �w���������

� � L

�� �� �� ��� � �� � �w��� �w���������

Definition 1.6 (The monadic 7 “reshape”). We define the monadic op-erator 7 as follows:

7 : AK → A1

7(A) := (n1, . . . , nK) = (|I1|, . . . , |IK |)

That is, 7(A) is an array of degree 1 or formally

7(A) : [1, . . . , K]→ �

the coordinates being 7[L] = nL for L = 1, . . . , K. In particular, if A ∈ A0

then we find 7A : [1, 0]→ �, thus 7A = K and similarly for A ∈ C0.

Remark 1.7. 1. For every array A we have 77A = (K) ∈ A1.

2. The arrays 4 ∈ A0 and (4) ∈ A1 are well distinguished, as a consequencewe observe 74 = K but 7(4) = (1). Both the latter quantities are vectors.Therefore we continue with 774 = (0), 77(4) = (1), etc.

Example 1.8.

L2� � � �� � `��a �w�

7L

77L

777L

=========================================

7�

`o/TN* v GwBw Ka

77�

o/TN* Gd c �B�DHC eBfG�Be H� U�v�Vv hB��B

7 CBDFC�d DhB kB�gDh�B�DHC Hf DhGd G�DBC�ckk

AhG�h G `�awqkBcCkE c fFCDhBC cIIkG�cDGH�

Page 14: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

10 � Arrays � Chapter II �

Hf 7 dhHFke CBDFC� DhB kB�gDh Hf DhB G�DBC�ckk

U�v�V H� AhG�h `�a Gd eBfG�Be AGDh �ckFB ��

777�

MG�GkcCkEv

7^*^

`o/TN*a

77^*^

777^*^

OFCDhBC�HCBv

7^Ls qN*O^

7^Ls qN*O^

77^Ls qN*O^

7^ ^

`o/TN*a

77^ ^

777^ ^

Now we observe that ��� knows dyadic operators as well. These are func-tions defined on pairs of operators which may have to obey certain restric-tions. We start out with the dyadic version of the operator 7 that we havejust studied.

Definition 1.9 (The dyadic 7 “reshape”). 1. First let is introduce thespace of arrays which have values in the set of integers, i.e., the inte-

Page 15: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Definitions and ‘‘shape’’ � 11

gervalued generalized matrices. Formally, we introduce

(1) NK :=

{A ∈ AK A :

K∏L=1

IL → �0

}.

In particular, N1 denotes integer vectors.

2. The dyadic 7 is defined via

(2) 7 : N1 ×A1 →∞⋃

K=0

AK

as follows:

(a)(n1, . . . , nK)7(x1, . . . , xr) = B ∈ AK

(b) If nL ≥ 1 (L = 1, . . .K) and r ≥ ∏KL=1 nL then

B(1, 1, . . . , 1) = x1,

B(1, 1, . . . , 1, 2) = x2,

etc., lexicographically, i.e.

B(1, . . . , 1, •) = (x1, . . . , xnK)

B(1, . . . , 2, •) = (xnK+1, . . . , x2nK)

etc.

(c) If nL = 0 for some L ∈ {1, . . . , K}, then B “has no values” – butit is well defined. In other words, one dimension is 0 and henceB is a “flat” array – a relative of ZILDE. As we expect (and willsee immediately), ZILDE can be seen as a canonical member ofthis family, as K = 071 can be verified.

(d) If r >∏K

L=1 is true, then the remaining values of x are omitted.

(e) If r <∏K

L=1 is true, then the values of x are repeated. I.e.,

n7x = n7(x,x, . . . ,x)

holds true.

Remark 1.10. The following details are consequences from our definition:

Page 16: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

12 � Arrays � Chapter II �

1. If x is a vector and n a natural number, then 7n7x = n.

2. (1)7(x1, . . . , xr) = (x1), K7(x1, . . . , xr) = x1, as the last object has thedimension as indicated in the first argument of the dyadic 7, hence it has tobe a real number.

Indeed we find in addition that 07(x1, . . . , xn) = K; hence, 7 is actuallydefined on N0 ×A1.

3. Alphabet–valued arrays B ∈ CK are generated in quite the same way

Page 17: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 3

Functions

aplc3

Functions are generally defined on (Cartesian products of) certain spaces ofarrays. Some of these we have implicitely been dealing with; any manipu-lation of an array is, in a sense, of course a function. Furthermore, there aquite a few function built in into the ��� language, these are called “systemfunctions”. Such functions may be elementary (e.g., addition or multiplica-tion) or more involved (see the following examples, e.g., encode and decodeor the dyadic transposition seen as a permutation acting on vectors, We willpresent a few of them from our more formal viewpoint but, again, no claimregarding completeness will be maintained.

Later on, however, we would like to generate additional functions for anyparticular purpose we are interested in. This technique is what in every-day language is called “Programming”. We postpone this presentation toChapter 5.

13

Page 18: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

14 � Functions � Chapter III �

5 Encode and Decodeaplc3s5

Remark 5.1. Let b ∈ � represent the “basis of b-adic representation” and letx ∈ �0 be an arbitrary natuaral number including 0. Then there exists uniquelyn ∈ � minimally chosen and an integer vector x = (x0, . . . , xn) ∈ [0, b − 1]n suchthat

(1) x = x0 + x1b+ x2b2 + . . .+ xnb

n

holds true. x = (x0, . . . , xn) ∈ [0, b − 1]n is called the b-adic representation ofx.

Another way of representing x in terms of the basis b is indicating by the notation

(2)

x = x0 + b(x1 + x2b+ . . . xnbn−1)

= x0 + b(x1 + b(x2 + . . . xnbn−1))

...

= x0 + b(x1 + b(x2 + . . . b(xn−1 + bxn) . . .)).

Now, the term in parenthesis is the largest multiple of b contained in x. Thus,using the Gauss–bracket we obtain

(3)

x0 = x−[xb

]b

x1 = x− x0 −[x− x0

b

]b

...

xn = x− x0 − . . .− xn−1bn−1 −

[x− x0 − . . .− xn−1b

n−1

b

]b.

In other words, if we define successively “quotients” q1, q2, . . . , qn via

(4)

x =[xb

]b+ x0 := q1b+ x0

q1 =[q1b

]b+ x1 := q2b+ x1

......

qn−1 =[qn−1

b

]b+ xn−1 := qnb+ xn−1

qn < b, qn := xn,

Page 19: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: Encode and Decode � 15

then it is clear that(x0, . . . , xn) = (x0, . . . , xn)

is the case. This way we see that the coefficients xi are obtained by successively“dividing with remainder”. This procedure is known as the Euklidean Algorithm.

There is a more general version of representing integers with respect to abasis which we describe shortly as follows.

Let b = (b1, . . . , bn+1) ∈ �n+1 be an integer vector and let x ∈ � be suchthat

x ≤ b1 + b1b2 + . . .+ b1b2 · · · bn+1

holds true. Then there exists uniquely (x0, . . . xn) ∈ �n+1 satisfying

(5) 0 ≤ xi < bi+1 (i = 0, . . . , n)

and

(6)x = x0 + x1b1 + x2b1b2 + . . . xnb1b2 · · · bn

= x0 + b1(x1 + b2(x2 + . . . b1(xn−1 + bnxn) . . .)).

Again, the coefficients (x0, . . . , xn) are obtained by the (slightly modified)Euklidean Algorithm. In the present context this is expressed via

(7)

x =

[x

b1

]b1 + x0 := q1b1 + x0

q1 =

[q1b2

]b2 + x1 := q2b2 + x1

......

qn−1 =

[qn−1

bn

]bn + xn−1 := qnbn + xn−1

qn < bn+1, qn := xn

with 0 ≤ xi < bi+1 for i = 0, . . . , n.

Now this is formalized suitably for the ��� –context as follows.

Definition 5.2 (Encode ~). We define

~ : N ×�0 → N0

(bn+1, . . . , b1)~x := (xn, xn−1, . . . x0)

such that

Page 20: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

16 � Functions � Chapter III �

(8)x = x0 + x1b1 + x2b1b2 + . . . xnb1b2 · · · bn

= x0 + b1(x1 + b2(x2 + . . . b1(xn−1 + bnxn) . . .)).

with

(9) 0 ≤ xi < bi+1 (i = 0, . . . , n)

is satisfied.

Example 5.3. If the basis consists of the powers of an integer, then weobtain the first esamples of dyadic or decimal expansion:

� � � � ~

� � � �

�� �� �� �� �� ~ ���

� � � � �

Similarly, hexagesimal expansion can be generated as follows:

s2^��������LsqN*O^

^��������LsqN*O^U� `�7��a~��V

��

^��������LsqN*O^U� `�7��a~��V

�O

^��������LsqN*O^U� `�7��a~���V

��

^��������LsqN*O^U� `�7��a~���V

���

Here are some further conventions that extend the range of ~:

If � � �[� is the case, then ~ yields the result of the Euklidean algorithmup to n, that is, terminates at n:

Page 21: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: Encode and Decode � 17

t2��

`t7�a~t��

� � � � � � � � � �

`t7��a~t��

� � � � � � � � � �

`t7��a~t �

� � � � � � � � � �

`t7��a~�=t

� � � � � � � � � �

`t7�a~�=t

� � � � � � � � � �

Also, there is an additional convention for 0 being introduced into the basis:the algorithm stops at n but yields the remainder. For example, we find

``�vt7�aa~�=��t

���� � � � � � � � � � �

``�vt7�aa~ � �=��t

���� � � � � � � � � � �

``� � �avt7�a~ `�=t �a

� � � � � � � � � � � � � �

``� � �avt7�a~ � �=��t

� � � ���� � � � � � � � � � �

``�� �� �� �avt7�a~ � �=��t

� � � ���� � � � � � � � � � �

Page 22: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

18 � Functions � Chapter III �

That is, if the 0 appears at some instant, then ~ yields the remainder ofthe Euklidean algorithm and ignores all further data. This way ~ has beenextended as to be a mapping

(10) N0n ×�0 → N0n

Moreover, the action on vectors and matrices is defined coordinate wise: e.g.,if we start out with

r2�� ;�=�

r

� � � � � � � � �� �� �� �� �� ��

then we obtain

`�7�a~r

� � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � �

and as ~ lists the dyadic expansion backwards with regard to traditionalmathematical convention, we receive the dyadic expansion of the first 15integers and beginning with zero listed upside down. Note that this yieldsan obvious representation of all subsets of a set of 4 elements or rather theincidence vectors of these sets.

More generally, the mapping

~ = N0n ×AK → AK+1

is given by(bn, . . . , b0)~A = B

withB : [1, . . . , n+ 1]× I1 × . . . IK → �

Page 23: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: Encode and Decode � 19

and

(11) B[; i1, . . . , iK ] := (bn, . . . , b0)~A/i1, . . . , iK)(Il ∈ Il(l = 1, . . . , K)

Page 24: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

20 � Functions � Chapter III �

8 Grade Up and Grade Downaplc3s8

As previously we denote by A1 the space of vectors and by N1 the space ofinteger vectors. The function DZ is called grade up and is defined as follows:

Definition 8.1.

(1) DZ : A1 → N1.

For x = (x1, . . . , xn) satisfying

xi1 < xi2 < . . . < xin

with {i1, . . . , in} = {1, . . . , n}, we define

DZx := (i1, . . . , in).

If some coordinates are equal, the function respects the original ordering in-dicated by x.

That is, DZ orders the indices 1, . . . , n according to the size of the coordinatesof x. As a consequence,

x[DZx] = (xi1 , . . . , xin)

arranges the coordinates of x in increasing order and

x[(DZx)[1]

is the minimum of the coordinates of x.

Example 8.2.

p2�w� `���a �w� �

p

�w� �w�������� �w� �

DZp

� � � �

pUDZpV

� �w� �w� �w��������

pUDZpVU�V

Page 25: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 8: Grade Up and Grade Down � 21

DZ �w� � � � �

� � � � �

� OCH�

DZ 7 � �

� � � � � �

� GD fHkkHAd DhcD AB hc�B

DZDZ 7 � �

� � � � � �

� 0f �HFCdB

DZDZ � 7 � �

� � � � � � �

-2� � � � � �

DZ-

� � � � � �

-UDZDZ`7-a7 � �V

� � � � � �

Let us discuss the action of DZ in connection with permutations. We wouldlike to represent tentatively a permutation by a vector. That is, if the per-mutation π is more elaborately given by

(2) π =

(1 2 . . . i . . . n

π(1) π(2) . . . π(i) . . . π(n)

),

then we represent this permutation by the vector in the lower row, i.e., by

(π(1), π(2), . . . , π(i) , . . . , π(n)).

Now, if π(i) = k holds true, then coordinate i of the vector π is the k′th inorder, i.e.,

(DZ)[k] = i.

Page 26: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

22 � Functions � Chapter III �

However, the permutation π−1 as described by

(3) π−1 =

(1 2 . . . i . . . n

π−1(1) π−1(2) . . . π−1(i) . . . π−1(n)

),

also satidfies π−1(k) = i. From this we conclude that

DZπ = π−1

provided we interprete both sides as permutations.

A permutation π acts as well as a linear mapping π : �n → �n, theappropriate definition is

(4) (π(x))i := xπ−1(i) (x ∈ �n, i ∈ I).

This allows to interprete π as a “permutation of the axes” of �n. Now, ifX ∈ A1 represents x ∈ �n in ��� –code, then, as π−1 corresponds to DZπ,we obtain

(5) X[DZπ]i = X[DZπ[i]] = X[π−1(i)] = xπ−1(i).

Hence, the linear mapping π : �n → �n, is given by π(x) = X [DZπ] .

Page 27: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 9: The Dyadic Transposition � � 23

9 The Dyadic Transposition �

aplc3s9

A permutation π : {1, . . . , K} → {1, . . . , K} may be described by

(1) π =

(1 2 . . . i . . . n

π(1) π(2) . . . π(i) . . . π(n)

),

and is canonically represented by the vector in the lower row, i.e., by

(π(1), π(2), . . . , π(i) , . . . , π(n)).

We shall now describe the action of permutations on arrays which result fromthe corresponding permutations of the intervals which constitute the domainof definition.

Definition 9.1. Let π be a permutation of {1, . . . , K} and let A ∈ AK, say

(2) A : I1 × . . .× IK → �,

then the array

(3) π�A : Iπ−1(1) × . . .× Iπ−1(K) → �

is defined by

(4) π�A[j1; . . . ; jK ] := A[jπ(1); . . . ; jπ(K)].

The reader should make sure that the operation is well defined. In particular,one has to check that the arguments of the transposed operator correspondto the correct intervals. Indeed, if

jl ∈ Iπ−1(l)

thenjπ(l) ∈ Iπ(π−1(l)) = Il,

thus, π�A is well defined.

Now we observe that the permutation π acts canonically on the dimensionvector of the array while transposition is applied. More detailed, the vector7A is canonically permutet in order to yield the dimension vector of thetransposed array. Indeed, we have

(5) (7π�A)l = |Iπ−1(l)| = (7A)π−1(l) = (π7A)l .

Page 28: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

24 � Functions � Chapter III �

That is the vector x = 7A is nicely permuted via the usual convention((π(x))l = xπ−1(l)) in order to obtain the dimension vector 7 of the trans-posed version of A:

7π�A = π7A.

Now, as we have described the action of permutations by means of the oper-ator grade up DZ in Section 8, we expect that π(x) is represented in ��� –code by x[DZπ] Thus, we expect the equation

(6) 7π�A = (7A) [DZπ].

Example 9.2. We take a very simple array which however demonstrates theeffects nicely:

L2� � � 7 �� � ;�

L

�� �� ��

�� �� ��

1/

� � �

1/ � L

�� ��

�� ��

�� ��

7 1/ � L

� � �

`7LaUDZ1/V

� � �

It should be stressed that the application of π on vectors is suitably theone that acts inversely on the coordinates (the above mentioned convention).

Page 29: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 9: The Dyadic Transposition � � 25

For one argument, this action exactly reflects the permutation of axis asindicated by π: e.g., if the axes of �3 are cyclically permuted by π = (2, 3, 1)then the vector x = (1, 2, 3) is thrown into πx = (3, 2, 1). For a secondargument, if v is a set function (a game) defined on the subsets of I, thenthe appropriate action induced by π yields the game πv which is given byπv(S) := v(π−1(S) (S ⊆ I). For set functions, this convention is preferableas π−1 preserves all set–operations and hence preserves additivity of a setfunction once it occurs. The action on vectors and the one on set functionscorrespond nicely in this case if a vector is seen as an additive set function.

The dyadic transposition may be generalized to the case that π is not apermutation but just a surjective mapping. Let L ≤ K and let

π : {1, . . . , K} → {1, . . . , L}be a surjective mapping. Define

(7) Iπl :=⋂

k∈π−1({l})Ik = [1, min

k∈π−1({l})ρk]

(such that Iπl = Iπ−1(l) holds true whenever π is bijective), then we define

(8)π�A : Iπ1 × . . .× IπL → �

π�A[j1; . . . ; jL] := A[jπ(1); . . . ; jπ(K)].

Observe the reaction of the dimension vector, the relation

(9) 7π�A = π (7A) .

generalizes the bijective case suitably, if we use the convention

π(x)l := mink∈π−1({l})

7k

in order to characterize the vector πx. This is verified via

(7π�A)l = min{ρk|π(k) = l} = mink∈π−1({l})

ρk.

In particular consider the mapping π : {1, . . . , K} → {1} which is suitablyrepresented by the vector (1, . . . , 1) or S7�, then

π�A[j1] = A[jπ(1); . . . ; jπ(K)] = A[j1; . . . ; j1]

or for short

1 1 . . . 1 �A[i] = `S7�a�A[i] = A[i; . . . ; i]

Page 30: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

26 � Functions � Chapter III �

meaning that the application yields the diagonal, if K = 2 and hence A is amatrix, then � � �L is the vector of diagonal elements.

Similarly, if π{1, 2, 3} → {1, 2} is given by (122),then

1 2 2 �A[j1, j2] = A[j1, j2, j2]

or for short1 2 2�A[i, j] = A[i, j, j].

Analogously2 1 1�A[i, j] = A[j, i, i].

Example 9.3.

L

��� ��� ��� ��� ���

��� ��� ��� ��� ���

��� ��� ��� ��� ���

��� ��� ��� ��� ���

��� ��� ��� ��� ���

��� ��� ��� ��� ���

� � � � L

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

��� ��� ���

� � � � L

��� ��� ���

��� ��� ���

wwww DcjBd DhB eGcgH�ck Hf DhB fGCdD

Page 31: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 9: The Dyadic Transposition � � 27

c�e dB�H�e IcCDGck �cDCG� &

c�e dB�H�e IcCDGck �cDCG��

L

111 ��� ��� ��� ���

��� 122 ��� ��� ���

��� ��� 133 ��� ���

211 ��� ��� ��� ���

��� 222 ��� ��� ���

��� ��� 233 ��� ���

Page 32: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics
Page 33: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 4

Operators

aplc4

Operators are maps defined on certain function spaces. This rather vaguedefinition can be made precise for a specific operator by indication the domainof definition and the range of the mapping as usual. However, as these quani-tites are not really present in the ��� workspace, it is now frequently nottoo rewarding to actually present a list of the details. Thus, one frequentlyexplains the action of an operator by indicating the arguments (functions)and the resulting images (also functions) via some direct presentation – notincluding the precise domain of definition etc.

29

Page 34: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

30 � Operators � Chapter IV �

1 Ravelaplc4s1

We start with a rather simple example of an “operator”, called ravel andrepresented by the slash �. A preliminary definition would be given as follows.

Definition 1.1. Let f : �2 → � be a function. Then, for every n ∈ � thefunction

f� : �n → �

is defined by means of the following recursion:

For n = 2 the function f� equals f .

For n > 2 the function f� : �n → � is given via

f/(x1, . . . , xn) := f(x1, f/(x2, . . . , xn)).

Note that the operation is not commutative, in general the termf(f(x1, . . . , x(n−1)), xn) may well differ from the above.

Now, it would be more precise to introduce, say, the set Fn := {f |f : �n →� and to argue that � or rather • is a function

• � : F2 →∞⋃n=1

Fn .

However, the gain in precision is not very high compared to the loss inoverview and besides, in order to define the class Fn one would have to saya few words about “functions” or “all functions available ��� ” which thenleads possibly to more confusion. We shall, therefore, continue discussingoperators more informally and more to the liking of the computer scientist.

Example 1.2. The most simple functions on �2 are the dyadic operations+,− . . . etc. Clearly, for x ∈ �n we have

+/(x1, . . . , xn) = x1 + . . .+ xn

and

−/(x1, . . . , xn) = x1 − (. . .− (x(n−2) − (x(n−1) − xn))) .

Page 35: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Ravel � 31

This works with all further dyadic functions like = v Y v Z ....

As a first generalization we consider an operator • �[L] which is also actingon functions. To this end let A ∈ AK be an array, i.e.,

A : I1×, . . . ,×IK → �

and let L be such that 1 ≤ L ≤ K. Now, for fixed choice of indices(i1, . . . , i(L−1), i(L+1), . . . , iK) we obtain the vector

A(i1, . . . , i(L−1), •, i(L+1), . . . , iK) ∈ �|IL| ,

hence, whenever f is a function, then the function f/ admits this vector asan argument, hence the term

C(i1, . . . , i(L−1), i(L+1), . . . , iK) := f/A(i1, . . . , i(L−1), •, i(L+1), . . . , iK) ∈ �is well defined. Obviously, C is an array, C ∈ AK−1. This now defines thevalue of the function f/[L] applied on the array A, i.e.,

C(i1, . . . , i(L−1), i(L+1), . . . , iK) =:(f/[L](A)

)(i1, . . . , i(L−1), i(L+1), . . . , iK)

or ratherC := f/[L](A) .

Combining, we have defined a function

f/[L](A) : AK → AK−1 ,

and it is left to the reader to ponder about the operator /[L], it’s domain andit’s range .... We see that the operator ’ravels’ along the coordinate L andkeeps all other coordinates unchanged.

Remark 1.3. Two special cases are noteworthy, we have

f/[1] = f/ and f/[K] = f� ,

that is, f/ may be seen to work on arrays as well (not just on vectors as inthe initial definition), ravelling along the first coordinate. Similarly f� works onarrays, ravelling the last coordinate (!).

Consider the follwing obvious results.

Example 1.4.

Page 36: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

32 � Operators � Chapter IV �

;��

� � � � � � � ��

x � � � � � � � ��

��

`���`�� �aa�

��

c�e

�x � � � � � � � ��

��

�x � � � � � � � �� ��

L�e fFCDhBC�HCB

L

� � ��

�� �� �� � ��

� � � � �

�� �� �� � ��

xU�VL

� �� �� � ��

xU�VL

�� �� � ��

Page 37: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 2: Outer Product � 33

2 Outer Product

The outer product denoted by �wcan be seen as a version of the tensor prod-uct used in various contexts with physical background or in tensor analysis.�wis as well a map on functions of two variables (i.e., dyadic functions in��� slang). The result is a function of two variables, mainly, of two arrays.We omit a formal definition of the range. Note that the function which servesas an argument appears on the right side of the operator, so we are temptedto use the notation �w•, which should give raise to some obvious questionsin view of the order of execution in ��� .

Consider a function f ∈ F2. Then, for any K,L ∈ � the function

�wf

is defined on pairs of arrays, say A ∈ AK ,B ∈ AL, and yields another array,say

A (�wf)B =: C .

Now, if A : I1 × . . .× IK → � and B : J1 × . . .× JL → � is the case, thenC ∈ AK+L is an array of the form

C : I1 × . . .× IK × J1 × . . .× JL → �

which is given via

C(i1, . . . , iK , j1, . . . , jL) := A(i1, . . . , iK) f B(j1, . . . , jL)

for all(i1, . . . , iK , j1, . . . , jL) ∈ I1 × . . .× IK × J1 × . . .× JL .

In particular, if the arrays involved are vectors, say x and y, then we findthat C := x (�wf)y is a matrix given by

Ci,j = C(i, j) = xifyj = f(xi, yj) .

Introducing the particular version hen f = × holds true, we see that

Ci,j = xi × yj = xiyj

resembles indeed the most familiar version of a tensor product available.

Example 2.1. The outer product of two vectors may as well be defined forthe function + :

Page 38: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

34 � Operators � Chapter IV �

�� � ;�

�� �� �� �� ��

;

� � � � � �

`�� � ;�a �w ;

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

c�e dkGghDkE gB�BCckG�Be

`��� � ;�a �w `�� � ;�a �w ;

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

� � � � �� � �w� ;

� � � � � � � �

Page 39: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 2: Outer Product � 35

� � � � � � � �

� � � � � � � �

� � � � � � � �

� � � � � � � �

� � � � � � � �

� � � � � � � �

also, if both vectors are equal:

`;�a �w� ;�

� � � � � �

� � � � � �

� � � � � �

� � � � � �

� � � � � �

� � � � � �

`;�a �w� ;�

� � � � � �

� � � � � �

� � � � � �

� � � � � �

� � � � � �

� � � � � �

and we obtain the identity matrix via

`;�a �w� ;�

� � � � � �

� � � � � �

� � � � � �

Page 40: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

36 � Operators � Chapter IV �

� � � � � �

� � � � � �

� � � � � �

Page 41: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: Inner Product � 37

3 Inner Product

The inner product is a generalization of the concept as defined for vectors.It works on functions and the result is a inner (scalar) product on arraysbased on these two functions. As previously we start out with (in this castwo) functions defined for two variables, “dyadic” in ��� slang. The resultof the mapping “inner product” is one dyadic function.

The notation used is a dot ’ . ’ or rather ’ • . • ’ as it is employed frequentlyfor the inner (scalar) product of vectors. And indeed, it is convenient toinplement a recursice definition that starts out with n operation on pairsof vectors, i.e., the traditional scalar product. The operator / (Ravel) isinvolved in the following definition.

Definition 3.1. Let f, g ∈ F2. Then the function f.g ∈ F is defined by

innpfirstinnpfirst (1) x (f.g)y = f/(x1gy1, . . . , xngyn)

for any pairs of vectors x = (x1 . . . xn) and y = (y1 . . . yn) of equal length.

Note that for f = + our definition reduces to

x (+.g)y = + /(x1gy1, . . . , xngyn) = x1gy1 + . . .+ xngyn) ,

and hence when g happens to be the product, i.e., g = ×, then we find

x (+.×)y = + /(x1× y1, . . . , xn× yn) = x1× y1 + . . .+ xn × yn) , = xy

which is indeed the traditional inner or scalar product on vectors in �n.

Now we continue with the definition of the inner product as follows.

Definition 3.2. Let f ∈ F, g ∈ F be a pair of (dyadic) functions. Then, thefunction f.g ∈ F is given as follows: for any pair of arrays A : I1×. . .×IK →� and B : J1 × . . .× JL → � such that

IK = J1

holds true, the array C = A(f.g)B is described by

innpsecondinnpsecond (2)C : I1 × . . .× I(K−1) × J2 × . . .× JL → �

C(i1 . . . iK−1, j2 . . . jL) = A(i1 . . . iK−1, •) (f.g)B(•, j2 . . . jL)for all

(i1 . . . iK−1, j2 . . . jL) ∈ I1 × . . .× I(K−1) × J2 × . . .× JL ;

Page 42: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

38 � Operators � Chapter IV �

here the second line of (2) of course refers to the definition provided in (1).

We specify this general definition immediately to the case in which f = +and g = ×. Assume also that A and B are matrices. Then we find for(i, j) ∈ I1 × J2:

(A+ .×B)(i, j) = Ai• + .×B•j+/Ai• ×B•j = (AB)ij ,

which shows that A+ .×B = AB is the conventional matrix product.

We demonstrate this by means of the following operations:

`�� � ;�a �w ;

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

�� �� �� �� �� �� � �

`��� � ;�a �w `�� � ;�a �w ;

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

��� ��� ��� ��� ��� ��� �� ��

Page 43: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: Inner Product � 39

��� ��� ��� ��� ��� ��� �� ��

Also, the inner product can be used to generate a unit matrix or its relatives:

`;��a�w�`;��a

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

`;��a�w�`;��a

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

� � � � � � � � � �

Page 44: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics
Page 45: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 5

Programming

aplc5

Now we would like to generate additional functions we are interested in. Thistechnique is what in everyday langage is called “Programming”. Technicallythe result of writing a “program” with respect to ��� syntax is a functionin the sense of Chapter 3. That is, functions defined by programs work onarguments that may be vectors or arrays.

41

Page 46: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

42 � The definition of functions: Programming � Chapter V �

1 The Definition of Functions – Programming

in ���aplc2s5

The definition of a function takes place within “definition mode”. The shapeof the function is indicated by the interior of a neighborhood delimited by

\

[0] Function header[1] . . .[2] . . .. . .[..] . . .. . .[n] . . .\

However, in newer versions there are editors available in order to put thesystem into “definition mode.”

There are

1. Functions one, two, and no variable.

2. Functions with or without assignment

3. Functions with global and local variables

Functions are identified by a name. Within the definition, the name and theabove characteristica with respect to variables and assignments have to bespecified.

Fuctions are referred to by name and, if applicable, by indicating the variablesthey depend on. This amounts specifying arguments as we do for functionslike ;, 7, or ~.

Example 1.1. We start with a standard problem, the solutions of a quadraticequation x2 + ax+ b = 0 is given by

queququequ (1) x1,2 =−a±√a2 − 4b

2,

provided the discriminant (the term under the root) is nonnegative.

As a first attempt we write a function/program for two variables a and bthat yields the solution. This amounts to a function of two variables a and

Page 47: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: The Definition of Functions -- Programming in ��� �43

b, which in the solution of 1 as its output. This output can be assigned to avariable.

U�V +2 L (.*( s

U�V N2`L=�a � ��s

U�V +2``�La `�v��a �` N = �w�aa�

Clearly, the function will come up with an ERROR code if the discriminanthappens to be negative. Thus, we cause the interpreter to exit the program(i.e., to move to line [0]) if this problem occurs:

U�V +2 L (.*( s

U�V N2`L=�a � ��s

U�V 3`N � �ax�

U�V +2``�La `�v��a �` N = �w�aa�

Now, this function ends up without any comment and result whenever thediscriminant is negative. This can be mended by sending the compiler to aline with label ’END’ whenever that happens.

U�V + 2 L (.*( s

U�V N 2 `L=�a � ��s

U�V 3 `N � �ax*tN

U�V + 2 ``�La `�v��a �` N = �w�aa�

U�V 3�

U�V *tN�

U�V ^N/Mq+/u/tLt, t*PL,/r*^

UV ^� LMM/Pt*N ,0 M0T.,/0t 0O (.*(^

UV + 2 �

and if we execute this we obtain

Page 48: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

44 � The definition of functions: Programming � Chapter V �

� (.*( �

N/Mq+/u/tLt, t*PL,/r*

� LMM/Pt*N ,0 M0T.,/0t 0O (.*(

Example 1.2. There may be a good reason to avoid an ERROR messagewithout explicitely testing for the value of a certain variable. E.g. themonadic ��� –function ' yields the inverse of a matrix, provided the matrixis nonsingular, i.e., the determinant does not vanish. Now, when applyingthis function we don’t want to compute the determinant. On one hand, rightnow we do not even have a program available which performs this task. Andon the other hand, even if we had a program, we would prefer not to wasttime with computing a determinant. Because, whatever the function ' does,it is probably much faster that any self constructed program we can possiblearrange for at this stage. The following method indicates how to avoid theERROR message:

L1TLP MLr*N ��x��x���� �������

\*++qL,qQU_V\

U�V /tr 2 *++qL,qQ L�_*Tp

U�V � ,hGd fF��DGH� eB�H�dDCcDBd DhB hHkeHff Hf *++0+dw

U�V � )GDhHFD c�DGH� DhB fF��DGH� _Nu Gd cddGg�Be DH

U�V � _*Tp �� c�e Gd B�B�FDBe AhB�B�BC

U�V � c� *++0+ H��FCdw /� DhGd �cdB _Nu CBIkGBd �E

U�V � c��HF��G�g DhB DEIB Hf *++0+w

U�V � )GDhG� DhB ICBdB�D ICHgCc�

U�V � ^3*++^ Gd cddGg�Be DH _*Tp ��w

U�V �

U�V � ===================================================

U�V

UV

UV

U�V _*Tp2^3*++^

U��V /tr2'L

U��V 3�

U��V *++�

Page 49: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: The Definition of Functions -- Programming in ��� �45

U��V ^t0 /tr*+M* *p/M,M^

U��V /tr2`7La7�

*++qL,qQ � � 7 ;��

t0 /tr*+M* *p/M,M

� � �

� � �

uL.2� � 7 � �� �� �

*++qL,qQ uL.

t0 /tr*+M* *p/M,M

� �

� �

u

� �

�� �

*++qL,qQ u

�w� ��w�

�w� �w�

*++qL,qQ � � 7 ;��

��w��������� ��w���������� �w���������

�w�������� �w���������� ��w���������

The above example shows a function of tw0 variables with assignment. Gen-erally the following forms appear:

NILADIC MONADIC DYADICwithout assignment: Ot Ot - p Ot -

with assignment: + 2Ot + 2 Ot - + 2p Ot -

The variables pv-v+ are local : they appear in the programming and executionmode but not in WORKSPACE. Further Variables can be made local byexplicetely registering them in the header, separated by a semicolon.

Branching can be set up in a program by refering the interpreter to move toseparate labels depending on arguments.

Example 1.3. The Newton method asks for the computation of√2 via

a0 = 2; an+1 =1

2an +

1

an(n = 1, 2, . . .)

√2 = lim

n→∞an

Page 50: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

46 � The definition of functions: Programming � Chapter V �

This is reflected as follows:

U �V L 2 t*),0t T� t

U �V L2 �v`T��a7�

U �V t 2 �

U �V � s./TN/tP L T001�

U �V +*1�

U �V LUtV2`LUt��VÆ�a �ÆLUt��V

U �V �s+LtqQ/tP�

U V 3 `+*1v*tNaU� T � t 2 t �V

U V *tN�

U �V ^,hB dB@FB��B Gd�^

U��V L

Page 51: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 6

The Coalitional Function

aplc6

We are going to introduce central topics of Cooperative Game Theory in thecontext of ��� programming.

47

Page 52: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

48 � The Coalitional function � Chapter VI �

1 Gamesaplc6s1

O-l �A�� Cooperative Game Theory deals with nonadditive set functions in-terpreted as coalitional functions or just games. More precisely, a game isa triple

(1) Δ := (I,P, v)

with the following ingredients: I := {1, . . . , n} is a finite set, the set ofplayers . P := {S S ⊆ I} is the power set of I and interpreted as thesystem of (feasible) coalitions . Finally,

(2) v : P→ �, v(∅) = 0

is the coalitional function . This function attaches to every coalition(group of players) S a real (“monetary”) value v(S), the “worth” of S.Coalition S can achieve v(S) by cooperation within some economic, political,social, ... context, the detailes are not specified. Thus, the set function vprovides the “incentive” for players to form coalitions. By a standard con-vention, the empty coalition achieves worth 0. A special case is provided bya simple game which is given whenever v takes only values 0 and 1, thus

(3) v : P→ {0, 1}, v(∅) = 0 .

We attempt to discuss the appropriate ��� –version of a game. First ofall, we identify coalitions S ∈ P with the incidence vector or indicator 1Swhich is given by

(4) 1S(i) = 1 (i ∈ I) , 1S(i) = 0 (i /∈ I).

we refer to this vector also as to the profile of S. Clearly, this concept isimmediately transferred to the ��� –context; a coalition or rather a profileof a coalition is an n–vector of zeros and ones. The power set or system ofcoalitions P is hence given by a matrix of all posible 0 − 1–vectors. This isobtained by decoding the numbers 0, 1, . . . , 2n−1 with respect to the dyadicbasis. We call this the “profile matrix”. The program “PROFILES” achievesthis as follows:

\1+0O/T*MU_V\

Page 53: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Games � 49

U�V o21+0O/T*M t

U�V � PB�BCcDBd DhB ICHfGkBd Hf ckk �HckGDGH�d Hf t IkcEBCdw

U�V � ,hB CBdFkD Gd c �����cDCG�� t CHAdv �=t �HkF��dw

U�V � MDc�ecCev BkBgc�D � �FD B�hcFdDd DhB )HCjdIc�B cD �� IkcEBCdw

U�V � `)M O.TTaw

U�V � =========================================================

U�V

UV o2`t7�a~�� ;�=t

1+0O/T*M �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

The coalitions appear as the columns of the matrix 1+0O/T*M ordered accord-ing to the ordering of the natural numbers which are dydically represented.As a result, the lexicographic ordering is reversed, i.e., player N appears firstand the grand coalition last. (The lexicographic ordering ranks 0 above 1).

We list two alternatives of generating 1+0O/T*M which may seem less elegantfrom the ��� –puristic viewpoint but are faster and more efficient. Thereader is obliged to maske himself acquainted with the inherent structure.

\1+0OLM,U_V\

U�V 121+0OLM, t�/�T

U�V � PB�BCcDBd ICHfGkBd fcdDw

U�V � T/u/, *++0+ cD t � ��

U�V �

U�V � =============================================

U�V 12`�v�=ta7�

U�V /2t

Page 54: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

50 � The Coalitional function � Chapter VI �

UV T001�3`��/2/��ax�

UV T2�=/

U�V 121vU�V`�=ta7`T7�avT7�

U��V 3T001

\1+0O/T/SU_V\

U�V +21+0O/T/S t�L�s

U�V � L ICHfBddGH�ck �BCdGH� DH �H�IFDB DhB ICHfGkB �cDCG�w

U�V � fcdD c�e BffG�GB�Dw

U�V � T/u/, *++0+ cD t � ��w

U�V

U�V

U�V s2L2�=t

UV +2`�vsa7�

UV u��3`L��ax�

U�V +2+vU�Vs7`�7L2L�ax� �

U��V 3u�

7 1+0O/T*M ��

�� �����

7 1+0O/T*M ��

7 1+0O/T*M ��

)M O.TT

1+0O/T*MUV o2`t7�a~�� ;�=t

7 1+0OLM, ��

T/u/, *++0+

1+0OLM,U�V 121vU�V`�=ta7`T7�avT7�

7 1+0OLM, ��

�� ���

7 1+0O/T/S ��

�� ���

Now to the coalitional function. In ��� context the coalitional function

v : P→ IR

Page 55: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Games � 51

is now represented by a function

c : {1S|S ∈ P} = {0, 1}N → �

or rather an arrayC : I1 × . . .× IN → �

withI1 = . . . = IN = [0, 1] .

As far as the index origin has been set to be _/02�, this convention is suffi-cient to describe games.

However, usually we prefer to have _/02�, in which case we should use anarray

C : I1 × . . .× IN → �

withI1 = . . . = IN = [1, 2] .

Both versions are in a sense isomorphic as mathematical objects so thatwe can indeed use any array on I1 × . . . × IN = [1, 2]N i.e., any C withρC = (2, . . . , 2) = Nρ2 for representation of a “game”. Note however that,in the second case the arguments have to be changed. In the first version theargument if C is just the 0− 1–vector 1S. In the second, one has to choose1S + 1Iso as to obtain a 1− 2–vector representing coalition S. Therefore, in��� –code, v(S) writes c[1S + 1I ].

There is a second approach to the coalitional function as an object in theWorkspace, simpler and for most purposes suficient. To describe this ap-proach, observer that the function v : P → � is as well described bya vector (v(S))S∈P which is of length 2n. Hence, a coalitional function in��� code could be just an vector V with dimension 7r � �=t (= 2n). Inthis case, the ordering of the coalition has to be fixed once for all so thatthe coordiantes of v seen as a vector are in unique correspondence to theelements of P. A most natural way would be to use the orderung indicatedby the matrix PROFILES.

Example 1.1. Consider the following two programs written to generate ad-ditive games.

\LNN/U_V\

Page 56: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

52 � The Coalitional function � Chapter VI �

U�V r 2LNN/ )

U�V � *kBgc�D �BCdGH�w PB�BCcDBd DhB LNN/,/r*

U�V � qHckGDGH�ck OF��DGH� r �HCCBdIH�eG�g DH DhB

U�V � �BcdFCB G�eG�cDBe �E DhB �B�DHC ) `DhB ABGghDdaw

U�V � PB�BCcDBd c �=t �B�DHC CBICBdB�DG�g DhB �HckGDGH�ck

U�V � fF��DGH� G� DhB HCeBC Hf �HckGDGH�d ICBd�CG�Be �E

U�V � DhB �cDCG� 1+0O/T*Mw

UV �

UV � ==================================================

U�V �

U��V r2 ) w� 1+0O/T*M 7)

LNN/ � � ��

� �� �� � �� �� �� � �� �� � � �� ��

,hGd cDDc�hBe DH DhB �cDCG� 1+0O/T*M ��

� � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � �

� �� �� � �� �� �� � �� �� � � �� ��

\LNN/,/rU_V\

U�V r2LNN/,/r )�t�T�/�1+0Oo*/T�(

U�V � PB�BCcDBd DhB �HckGDGH�ck fF��DGH� CBdFkDG�g fCH� c �BcdFCBx

U�V � rB�DHC Hf ABGghDd )w

U�V � /�IFD� rB�DHC Hf ABGghDd ) � `)U�Vv www v )UtVa w

U�V � 0FDIFD� OF�jDGH�x Pc�B r `ceeGDG�Ba �

U�V � cd c �=t � �B�DHC rU�V wwww rU�=tV

U�V � � G� DhB HCeBCG�g c��HCeG�g DH 1+0O/T*Mw

UV �

UV � ==========================================================

U�V T2�=t27)

U��V r2T7�

U��V /2��

Page 57: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Games � 53

U��V .1�3`t�/2/ �ax�

U��V (2�=/

U��V 1+0OqTut2T7`(7�av(7�

U��V r2r 1+0OqTut�)Ut�/V

U��V 3.1

LNN/,/r � � ��

� �� �� � �� �� �� � �� �� � � �� ��

Page 58: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics
Page 59: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Chapter 7

Cephoids

aplchcephoids

Within this chapter we provide a library for the computation of the data of acephoid. A cephoid is a special convex compact polyhedron: the Minkowskisum of a finite set of (“positive”) simplices. We aim for the computation ofthe maximal faces of such polyhedra. Within the presentation we will alsodeal with other data as well, e.g., the normal of a maximal face, the dualversion of a cephoid, the reference vector of a maximal face, etc.

55

Page 60: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

56 � Cephoids � Chapter VII �

1 Introduction, Facesaplchcephs1

A cephoid is an algebraic (“Minkowski”) sum of finitely many simplices.Each of these simplices we assume to be spanned by the vector 0 ∈ �n andn additional positive vectors located on the axes of �n. Thus we speak of“deGua”–simplices in view of J.P. de Gua de Malves [1] who first discussed ageneralization of the Pythagorean Theorem, thereby dealing with a positivesimplex as described above.

To make this more precise, let a = (a1, . . . , an) > 0 ∈ �n, be a positivevector. Let I := {1, . . . , n} and denote by ei be the ith unit vector (i ∈ I).Also, let ai := aie

i (i ∈ I := {1, . . . , n}) denote the multiple of ei indicatedby the ith coordinate of a.

Then the vectors ai (i ∈ I) together with the vector 0 span a simplex (theconvex hull of these vectors), which is written Πa := conv ({0,a1, . . . ,an})(conv denoting the convex hull). Now Πa is called a deGua simplex .

Various subsimplices of a deGua simplex are of special interest. We denote byΔa := conv ({a1, . . . ,an, }) the simplex spanned by the vectors ai (i ∈ I)without the vector 0, this is the outward surface of Πa. Also, for ∅ =J ⊆ I, we write Δa

J := conv((a(i))i∈J) thus obtaining the subsimplex of Δa

corresponding to some subset J of the index set I.

Next, let a• = (a(k))Kk=1 be be a family of positive vectors in �n. We writeK := {1, . . . , K}. Then the algebraic or Minkowski sum

prismensummeprismensumme (1) Π = Πa•:=

K∑k=1

Πa(k)

=∑k∈K

Π(k)

Π is called a cephoid . Cephoids have been introduced in [5], see also [2],[4].Throughout this paper we assume that a cephoid is nondegenerate, see [5]for the details.

In ��� the data of a cephoid are given by K vectors arranged in a K ×N–matrix. generically denoted by A. that is, a cephoid is represented by aK × N array of shape ρ = 2. For example we have the 3 × 8 cephoid sT.*

given via

Page 61: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Faces � 57

�������������������������� ,Q* q*1Q0/N sT.* ���������

sT.*

��� ��� ��� �� ��� ��� ���

�� �� �� �� � ��

� ��� ��� �� � �� ��

7 sT.*

��������������������������������������������������������

Note that the array A denotes the family of vectors, not the algebraic sum– the cephoid – as such. It is our aim to compute the data of the cephoid bymeans of the appropriate computational tools, that is ��� programs.

Now, the outer surface (“Pareto surface”,“cephoidal surface” ) of a cephoidΠ is denoted by ∂Π. In order to describe the maximal faces of ∂Π, it isappropriate to recall the “Coincidence Theorem” ([5]). It states the following.

Theorem 1.1. Given some maximal face F of ∂Π, there is, for each k ∈Kan index set J (k) ⊆ I and a corresponding subsimplex Δ

(k)

J(k) of Δ(k) such that

deltafac1deltafac1 (2) F =

K∑k=1

Δ(k)

J(k)

holds true. Furthermore, there is a set of coefficients (unique up to a positivemultiple constant) c� = (c�k)k∈K such that F has the same normal as the

convex hull of the “adjusted” subfaces c�kΔ(k)

J(k).

In this context we prefer to also use the term “maximum” for the convex hullreferring to the partial ordering induced by inclusion on convex sets; hencethis convex hull is denoted by ∨

k∈Kc�kΔ

(k)

J(k).

Page 62: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

58 � Cephoids � Chapter VII �

The sets J (k) are called the reference sets , the collection J =(J (k)

)k∈K

is the reference system of F . The reference system defines F uniquely.

E.g., a face of the cephoid sT.* called sT.*O�� is given by the referencesystem

bluef25bluef25 (3) J (1) = {5, 6}, J (2) = {1, 3, 4, 7}, J (3) = {1, 2, 5} .

the precise way to write this faces is

(4) sT.*O�� := Δa(1)

{56} +Δa(2)

{1347} +Δa(1)

{125},

where the vectors a(1),a(2),a(3) are given by the rows of the matrix sT.*.

To represent this by an appropriate array we choose a N × K matrix, thecolomns of which correspond to the various reference sets. Then we obtainfor sT.*O��:

===========================================

sT.*O��

� � �

� � �

� � �

� � �

� � �

� � �

� �

)+ sT.*O��

� � # � � � # � � � #

==========================================

The function )+ writes a face; it helps to obtain an immediate overview aboutthe index sets suggested by the array that is used for computational purposewithin ��� context. Within the above sketch we have used the function )+

in order to write the face sT.*O�� in a way which resembles formula (3).

The adjustment coefficients as mentioned above c�k are determined uniquelyup to a positive multiple. The set

L := {l ∈ I l appears in at least two of the sets J (k)}

Page 63: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Faces � 59

is called the adjustment set . It serves to determine the normal of F asfollows.We write L(k) := L ∩ J (k) and

(5) � :={(k, l) l ∈ L, J (k) � l

}=

{(k, l) l ∈ L(k)

}and obtain the linear adjustment system which is the homogeneous linearsystem of equations in variables (ck, λl), ((k, l) ∈ �), given by

linsysequlinsysequ (6) cka(k)l = λl ((k, l) ∈ �).

As shown in [5], this system (for fixed F ) has a unique solution (up to apositive constant) (c�•,λ

�•), the first ingredients of which yield the adjustment

coefficients. Moreover, the normal n� of F is obtained by computing

normalpermaxnormalpermax (7) a�i := maxk∈K

c�ka(k)i (i ∈ I)

and

normalpermax2normalpermax2 (8) n� =

(1

a�1, . . . ,

1

a�n

).

Finally, note that the linear functional x → n�x attains its maximum re-stricted to Π(k) = Πa(k)

exactly on Δ(k)

J(k). “Adjustment” means that the

maximal value of this functional relative to c�kΠ(k) (which is attained exactly

on c�kΔ(k)

J(k)) equals some common value t� for all k ∈K – which is why n� isindeed the normal to ∨

k∈Kc�kΔ

(k)

J(k)

as well as to F .

The computational procedures for to deal with these objects are constructedas follows. The solutions to the linear adjustment system are given by thefunction LNR.M,q0*O. Note that this is a function of two variables as theface is given via the reference system referring to the matrix A representinga cephoid. Thus we have

sT.*O�� LNR.M,q0*O sT.*

�w��������������� �w���������� �w�����������������

Next we determine the coefficient matrix of the linear adjustment system.To this end we rewrite the linear system (9) in the form

linsysequlinsysequ (9) cka(k)l = λl ((k, l) ∈ �),

such that the coefficients of the λρ are all equal to −1. The program q0�

*OOT/tLNR then yields for instance:

Page 64: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

60 � Cephoids � Chapter VII �

===================================

sT.*O�� q0*OOT/tLNR sT.*

� � � � � � � � � �

� �� � �� � � � � � �

� � � �� � � � � � �

� � ��� � �� � � � � �

� � � � �� � � � �

� �� � � � � �� � � �

��� � � � � � � �� � �

� � � � � � � �� � �

��� � � � � � � � �� �

� �� � � � � � � � ��

===================================

Based on these procedures we are now in the position to compute the normalto a face. In order to do so we solve the linear adjustement system andthereafter just take the inverse vector (“coordinatewise”). The result is ourfirst basic function: ]t0+uLT which we represent fully as follows:

U �V t0+ 2 O ]t0+uLT L�q�qu�qM,L+

U �V

U �V � ==========================================================

U �V � q0u1.,*M ,Q* t0+uLT ,0 L OLq* O 0O L q*1Q0/N Lw

U �V � .M*M ,Q* T/t*L+ LNR.M,u*t,M-M,*uv ,Q.M q0u1.,*M

U �V � ,Q* M0T.,/0t ,0 ,Q* T/t*L+ LNR.M,u*t,M-M,*uv ,Q*t /tr*+,M

U �V � ,Q* r*q,0+ q00+N/tL,*)/M*w

U V � .M*N LM M.s+0.,/t*M L+* ,Q*+*O0+* O.tq,/0tM

Page 65: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 1: Faces � 61

U V � = LNR.M,q0*OO =v = q0*OOT/tLNR =v = TuL,+/p = LtN

U �V � ,Q*/+ M.s+0.,/t*Mw

U��V � ==========================================================

U��V �

U��V q2 O LNR.M,q0*O L

U��V 3`q��ax*++0

U��V � q2� � �

U��V qu2 ```7LaU�Va x ``7qav�a7 qa�L

U��V qM,L+ 2 Y xU�V qu

U�V t0+2�ÆqM,L+

U�V 3�

U��V � OOOOOOOOOOOOOOOOOOOOOOOOOOO

U��V *++0�

U��V ^*++0+ )Q*t q0u1.,/tP L t0+uLT r/L = t0+uLTO = &^

U��V ^t0+uLT /M /MM.*N )/,Q �w^

U��V t0+ 2 �

Page 66: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

62 � Cephoids � Chapter VII �

2 The Dual Cephoidaplchcephs2

To any cephoid represented by a matrix A we can construct its dual by justtaking the adjoint or transposed Matrix AT . Assume that A is a K × N–matrix, that is the cephoid

Π =K∑k=1

Πa(k)

is a sum of K deGua simplices in �n. Then, clearly the dual cephoid is asum of n simplices in �K . We write a

(i)k := a

(k)i (i ∈ I, k ∈K). and call the

family

(1)(a(i)

)i∈I

the dual family . The cephoid

(2) Π = Πa•=

∑i∈I

Πa(i)

is the dual cephoid .

The dual cephoid is at once seen to be given by �A. It is the nice result of[3] that the faces of the dual cephoid are obtained by simple operation fromthe faces of the primal cephoid. To be precise, let F be a maximal face of Π

given by its reference system J =(J (k)

)k∈K

. For i ∈ I we write

(3) J(i)

:={k ∈K i ∈ J (k)

},

then it turns out that

(4) J =(J

(i))i∈I

(called the dual reference system) defines a maximal face of Π. This waya bijective mapping between the faces of both the primal and dual cephoidis established. The dual face to some face F is, therefore, easily computed,we use function N.LTOLq* given as follows.

U�V N.LT 2 N.LTOLq* O�+

Page 67: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 2: Duality � 63

U�V

U�V � ==========================================================

U�V � P*t*+L,*M ,Q* N.LT OLq* ,0 L OLq* O

U�V � ==========================================================

U�V +27O

U�V N.LT 2 ``� Oa��a � � +7 ;+U�V

Obviously, this operation can be performed with a family of faces, in partic-ular with the family of all faces of Π; this is done by the function N.LTOLu.

For example, turning to the 25th face of cephoid sT.* we obtain

sT.*O��

� � �

� � �

� � �

� � �

� � �

� � �

� �

)+ sT.*O��

� � # � � � # � � � #

===========

N.LTOLq* sT.*O��

� � � � � � �

� � � � � � �

� � � � � � �

)+ N.LTOLq* sT.*O��

� � # � # � # � # � � # � # � #

Now, the faces of the dual cephoid obey the same laws as the one of the primal

Page 68: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

64 � Cephoids � Chapter VII �

cephoid. In particular, we can construct the linear adjustment system of thedual F to a face F . The dual adjustment set is then

(5)L :=

{k ∈K k is in at least two different J

(i)}

={k ∈K |J (k)| ≥ 2

}which yields the set

(6)� :=

{(i, s) s ∈ L, J

(i) � s}

={(i, s) s ∈ L

(i)}

={(i, s) i ∈ J (s), J (s) ≥ 2

}.

analogously to (9) of Section 1. Hence the dual linear adjustment sys-tem is the linear system of equations in variables (n•, μ•)

duallinsystduallinsyst (7) a(i)s ni = μs ((i, s) ∈ �).Now, in [3] it is shown that the adjustment coefficients of the primal faceconstitute the normal of the dual face and vice versa. In particular, thesystem (7) directly serves to compute the normal of the primal face.

Based on this result we obtain a second method of computing the normal toa face of a cephoid.

U�V t0+uLT* 2 OLq* ]t0+uLTN L

U�V

U�V � ==========================================================

U�V � q0u1.,*M ,Q* t0+uLT 0O L OLq* r/L N.LT/,- ,Q*0+-w

U�V � ,QL, /Mv q0u1.,*M ,Q* LNR.M,u*t, q0*OO/q/*t,M 0O ,Q*

U�V � N.LT OLq* +*TL,/r* ,0 ,Q* ,+LtM10M*N uL,+/p L�, w

U�V � ==========================================================

UV

UV t0+uLT* 2`N.LTOLq* OLq*a LNR.M,q0*O � L

Page 69: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 2: Duality � 65

When comparing both methods and the results obtained by computing thenormals via the two programs obtained, a caveat is in order. Both the lin-ear adjustment systems are homogeneous systems of degree 1, that is, thesolution space is one–dimensional (i.e. the solutions are just unique up to amultiple constant – so is the normal to a face).

We obtain a solution by requiring a variable to satisfy λ1 = 1 within thesystem. But the transposition of the matrix and the dual face operationinvolved in program ]t0+uLTN may change this normalizations, so both re-sults may differ. For example, we seem to have a discrepancy in the followingcomputations, but it turns out that the first result is a multiple of the second.

sT.*O�� ]t0+uLT sT.*

�w���������������� �w�������������� �w������������

�w����������������� �w������������

�w����������� �w�������������

sT.*O�� ]t0+uLTN sT.*

�w��������������� �w������������������ �w�����������������

�w����������������� �w���������������

�w���������������� �w����������

`sT.*O�� ]t0+uLTN sT.*a Æ sT.*O�� ]t0+uLT sT.*

�w��������������� �w�������������� �w�������������

�w������������� �w���������������

�w�������������� �w���������������

Page 70: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

66 � Cephoids � Chapter VII �

3 The First Algorithmaplc7*s3

Within this section we describe and implement an algorithm for computingall maximal faces of a (non–degenerate) cephoid. To this end, we employa recursive procedure describing the number and nature of maximal facesof such a cephoid Π =

∑k∈K. The procedure – and hence the idea of

our algorithm – in this case is derived from [5]. We shall use the fact that,for n ≥ K every maximal face of a cephoid Π can be found on the n − 1boundaries, i.e., has a nonempty intersection with the outward surface of oneof the lower dimensional cephoids ΠI\{i} for some i ∈ I.

Let J ⊆ I. We say that a maximal face F of Π has a proper J–cut if

(1) dim (F ∩�nJ+) = |J | − 1

holds true, i.e., the intersection has the dimension of the �nJ+–boundary of

the (outer) surface ∂Π of Π. Another way of interpreting this definition is as

follows. Consider, for any a(k) the restriction to �nJ called a

(k)J . Then

ΠJ =∑k∈K

Πa(k)J ⊂ �n

J+

is a cephoid in �nJ+. It is not hard to see that F has a proper J–cut if and

only ifF ∩�n

J+

is a maximal face of ΠJ .

Proper cuts are ordered by inclusion. A minimal proper cut is a propercut with minimal dimension, that is with minimal size of J . We call F anl–based face if the dimension of the minimal proper cut is l − 1.

Thus, a 1–based face contains a vertex, a 2–based face cuts properly into a2 dimensional subcephoid of Π, etc.

Now, based on Proposition 6.1 of [5] we formulate the following remark.

maxlm1 Lemma 3.1. Let F be a maximal face of Π. Then F is an l–based face forsome l ≤ min{K − 1, n}. The set J that yields the minimal proper cut isexactly the set L of reference indices of F . In particular, if K ≤ n holdstrue, then any maximal face is l based with some l ≤ n− 1.

As a consequence, for K ≤ n any maximal face of a cephoid Π induces amaximal face of a lower dimensional cephoid of dimension of at most K−1 ≤

Page 71: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: 1st Algorithm � 67

n − 1. This lower dimensional maximal face however has the same set ofreference indices L. As the reference indices uniquely determine a maximaleface, we can identify the original face by it lower dimensional induced version.

This fact clearly hints to a recursive procedure in order to compute all max-imal faces of a cephoid: we look to the maximal faces of (n− 1)–dimensionalsubcephoids and try to augment the corresponding reference sets accordingly.

This augmentation is performed by means of the linear adjustment system.For, given the set L (which stems from a face F (−i) of some (n− 1) dimen-sional cephoid Π(−i) ), we can compute the normal, say n�, to the correspond-ing face F in n dimensions. Now, given this normal, the reference system ofthe face is obtained at once. For, the reference set J (k) of F is described bythe fact that the functional x → n�x attains its maximum relatively to Δ(k)

exatly on Δ(k)

J(k). Therefore, given n�, the set J (k) consists of just those i ∈ I

that maximize the expression a(k)in� = a(k)i n�

i .

Let us describe a more formal approach as follows.

We write

(2) a• :=(a(k)

)κ∈K

for a family of positive vectors generating a cephoid. Consider the mapping(3)

F(K, n; �) :{a• :=

(a(k)

)κ∈K a• is non-degenerate

}→ P

((P(I))K

)( where P(•) denotes the power set) which associates with a set of positivevectors in �n

+ a finite set F(K, n;a•) of reference systems (J (1), . . . ,J (K))corresponding to the faces of Π =

∑i∈K Π(k). We base an algorithm on

the following Theorem that is proved in [5]:

Theorem 3.2. The function F(K, n; �) can be recursively computed usingthe functions F(K ′, n; �) (K ′ < K) and the functions F(K, n′; �) (n′ < n).

Proof:

1stSTEP : We start with n = 2. In this case the cephoidal surface consistsof line segments. For arbitrary K assume that the slopes of line segmentsa(k)1

a(k)2

are strictly decreasing in k. Then the faces of Π are given by

facesn2facesn2 (4) F (k) :=∑l<k

a(l)1 +Δa(k)

+∑l>k

a(l)2 .

Page 72: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

68 � Cephoids � Chapter VII �

Equivalently, the corresponding index sets are given by

indexn2indexn2 (5)

J (1) = . . . = J (k−1) = {1},J (k) = {1, 2},

J (k+1) = . . . = J (K) = {2}.The correponding matrix representing such a face in our code is given by

(1 · · ·1 1 0 · · ·00 · · ·0 2 2 · · ·2

).

Thus, in this situation, the maximal faces are just the translates of the linesegments and the computation is rather straightforward.

In general, as the line segments involved will not be ordered according todecreasing slopes, one has to employ a suitable permutation generating thecorrect ordering.

This way, all faces are completely described in case that n = 2 holds true;an ��� –function representing this algorithm is ]OLqt�:

\ OLu 2 ]OLqt� L�S�t�T�(�.1,+/�T0),+/

U�V �

U�V � ==========================================================

U�V � q0u1.,*M ,Q* OLq*M 0O Lt S�� q*1Q0/N

U�V � ==========================================================

U�V � ,Q* NL,L�

U�V S2 `7LaU�V � t 2 `7LaU�V

UV 3`t��ax)L+t

UV � ,Q* 1*+u.,L,/0t�

U�V (2LU��VÆLU��V

U��V 1/2DZDZ(

U��V � ����������������������������������������������������������

U��V � ,Q* .11*+ ,+/LtPT* ����uL,+/p�

U��V .1,+/ 2 `;Sa�w� ;S

U��V � ,Q* T0)*+ ,+/LtPT* ����uL,+/p�

U��V T0),+/ 2 � � `;Sa �w� ;S

U��V �3�

U�V � ����������������������������������������������������������

Page 73: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: 1st Algorithm � 69

U�V � ,LS/tP L OLq* s- +*L++LtP/tP ,Q* q0T.utM 0O s0,Q ,+/LtPT*M�

U��V �

U��V T2�

U��V OLu 2 �7�

U��V � q0.t,/tP ,Q* q0T.utM�

U��V � ����������������������������������������������������������

U��V .1�3`S�T 2 T �ax�

U��V OLu 2 OLuv y`�vSa7` .1,+/UT�VU1/Vav`T0),+/UT�VaU1/V

U��V 3 .1

U�V )L+t�

U�V ^t /M t0, � /t 1+0P+Lu =OLqt�=^

U��V ^OLu/T- /M /MM.*N )/,Q �7�^

U��V OLu2�7�

\

As an example we compute the faces of two columns of the transposed matrixof sT.*:

sT.*

��� ��� ��� �� ��� ��� ���

�� �� �� �� � ��

� ��� ��� �� � �� ��

`� sT.* aU�� �V

��� �

��� ���

��� ���

�� ��

��� �

��� ��

��� ��

)+- ]OLqt� `� sT.* aU�� �V

� � # � # � # � # � # � # � #

� # � # � � # � # � # � # � #

� # � � # � # � # � # � # � #

� # � # � # � # � � # � # � #

� # � # � # � # � # � � # � #

Page 74: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

70 � Cephoids � Chapter VII �

� # � # � # � # � # � # � � #

� # � # � # � � # � # � # � #

2ndSTEP : For completeness we consider the case K = 2 for dimensionn ≥ 3 that has been treated in Section 4 of [5]. We do not have to developa separate program for this case if we are willing to employ duality theory.However, we want to shortly describe the “duality free” procedure.

In case of two cephoids we call the deGua simplices involved Πa and Πb. Now,for any two prisms Πa and Πb, there is an ordering ≺ of I that completelydescribes all faces via

facepermfaceperm (6) F≺i := Δ(a)

S≺i+Δ

(b)

T≺i

(i ∈ I).

with

(7) T≺j := {i ∈ I i ≺ j} ∪ {j} S≺

j := {i ∈ I j ≺ i} ∪ {j}denoting the predecessors (resp. successors) of j ∈ I including j.

Now, for n = 3, determine i ∈ I = {1, 2, 3} such that bi admits the normalof Δa. Next, determine j ∈ I = {1, 2, 3} such that aj admits the normal ofΔb. Let k be the third index. Then the ordering is i ≺ k ≺ j.

For n > 3, suppose the procedure is known for n− 1. Compute the orderingon I \ {n} by projecting all prisms and the sum in �n

I\{n}. Likewise proceed

in order to obtain an ordering on I \ {1}. The orderings are necessarily con-sistent and define an ordering on I. This generates all faces and index setsvia (6).

Here is a corresponding program. Note that the procedure includes morerecursion, hence is less “��� ”–elegant but possibly faster ....

U �V OLu 2 ]OLqS�ts*T L�(�1/�T�u�S

U �V

U �V

U �V � ==========================================================

U �V � P*t*+L,*M LTT OLq*M 0O L q*1Q0/N P/r*t r/L ,Q* uL,+/p L

U �V � O0+ O0+ S � �v /w*wv O0+ L /M L � �t uL,+/pv

Page 75: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: 1st Algorithm � 71

U �V � ,Q.M q0tM/M,M 0O ,)0 +0)Mw

U V � ===========================================

U V

U �V S2`7LaU�V

U��V ( 2 LU��VÆLU��V

U��V

U��V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U��V � OLq*M L+* q0tM,+.q,*N ,LS/tP /t,0 Lqq0.t,

U��V � ,Q* 0+N*+/tP 0+ 1*+u.,L,/0t

U��V � ,QL, /M P*t*+L,*N s- ,Q* M/o* 0O ,Q* MT01*M 0O ,Q*

U��V � M,+L/PQ, T/t*M q0++*M10tN/tP ,0 ,Q* q0T.utM 0O L

U�V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U�V 1/ 2 DZ(

U��V �1/

U��V �^^

U��V �^ )* uL- T/M, ,Q* 1*+u.,L,/0t /t qLM* /, /M t**N*N�^

U��V ��(

U��V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U��V T2� � u2�`�vSa7`;SavS7�

U��V uU1/U�V�V2 `1/U�Vv1/U�Va

U��V

U�V OLu 2y u

U�V � ������������������������������������������������

U��V .1�

U��V 3`S�T2T �ax *tN

U��V uU1/UT��V�V2 `�v1/UT��Va

U��V uU1/UTV�V2 `1/UTVv1/UTVa

U��V OLu2OLuv y u

U��V 3.1

U��V *tN�

Page 76: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

72 � Cephoids � Chapter VII �

3rdSTEP :

Now we proceed by induction in K and n. For K > n, we may use dualityin order to convert our problem to a situation in which K < n holds true.We may therefore assume K ≤ n to be the case.

4thSTEP : If K ≤ n then, for any maximal face F , we know that F is anl–based face with l ≤ K − 1 ≤ n − 1. Consider the representation by thereference system, say

summandssssummandsss (8) F =K∑k=1

Δ(k)

J(k)

and let L ⊆ I with |L| = l be the set of adjustment indices. As l ≤ n− 1 istrue, there is at least one index in I that is not an element of L. Assume forthe sake of simplicity that this index is n.

Consider the projection on �nI\{n}. Then we have Δ

(k)

J(k)∩�nI\{n} = Δ

(k)

J(k)\{n}.

As F I\{n} is maximal with respect to ΠI\{n} =∑K

k=1Δ(k)I\{n} we note that

(9) F I\{n} =

K∑k=1

Δ(k)

J(k)\{n}.

Hence, F I\{n} is an l–based face with the same set of boundary indices L. Asthe dimension has been reduced by one, F I\{n} or rather the reference systemcan be computed using the procedures defining the functions F(K, n′; �) forn′ < n.

5thSTEP :

Now, the set L of adjustment indices obtained for some face F I\{n} recur-sively is as well the adjustment set for the face F . The set L determinesthe face F uniquely and the way to handle this computationally is indicatedby the adjustment system. The adjustment system can be set up (in full ndimensions) and yields the normal of F . The normal in turn determines theextremals of F as, for any k ∈K, these are those vectors a(k)i (i ∈ I) thatmaximize the inner product with the normal relative to Δ(k).

6thSTEP : We have to observe that the transition from F to F I\{n} is notunique. In other words, a face F may have quite a few descendants inn− 1 dimensions or less, thus appear several times when the recursion fromlower dimensions to n is enacted. To prevent multiple listings, we have toeliminate double appearances of faces. A possible procedure is to appeal to

Page 77: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: 1st Algorithm � 73

the reference vectors (and not to the reference sets) as these provide less datato check through. The reference vector determines a face uniquely, hence itsuffices to carry on a list of reference vectors and delete multiple listingsaccordingly.

We provide the Function ]Oq+ that incorporates the algorithm describedabove.

U �V OLqPT0s 2 ]Oq+ L�S�t�N�+rPT0s�S��+rPT���L��OLu��+*Ou��S��O��/��O�+�

U �V �

U �V � ==========================================================

U �V � P*t*+L,*M LTT OLq*M 0O L q*1Q0/N +*1+*M*t,*N s- ,Q*

U �V � S � t uL,+/p Lw sLM*N 0t ,Q* +*q.+M/r* LTP0+/,Qu .M/tP

U �V � ,Q* uL,+/p 0O +*O*+*tq* r*q,0+Mw

U �V � ==========================================================

U V � 0.,1., /M L OLu/T- 0O OLq*Mv /w*wv L r*q,0+ *LqQ q0u10t*t,

U V � 0O )Q/qQ /M Lt /tqT.N*N t � S uL,+/p +*1+*M*t,/tP L OLq*w

U �V � ==========================================================

U��V �

U��V �NL,L�

U��V S 2 `7LaU�V

U��V t 2 `7LaU�V

U��V � S � � 0+ t��� +*N.q,/0t ,0 1+0P+LuM Lqq0+N/tPT-w

U��V � ������������������������������������������������

U��V 3`S��axq0tS

U�V OLqPT0s 2 ]OLqS�ts*T L

U�V 3�

U��V � ������������������������������������������������

U��V q0tS�

U��V �

U��V 3`t��axq0tt

U��V OLqPT0s 2 ]OLqt�Ss*T

U��V 3�

U��V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U��V q0tt�

U�V � /O t *pq**NM Sv ,Q*t .M* ,Q* N.LT r*+M/0t�

U�V 3`t�Sax1+/uLT

U��V OLqPT0s 2 N.LTOLu ]Oq+ � L

Page 78: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

74 � Cephoids � Chapter VII �

U��V 3�

U��V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U��V 1+/uLT�

U��V OLqPT0s 2 �7�

U��V � ,Q* uL,+/p 0O +*O*+*tq* r*q,0+M `Svta�

U��V +rPT0s 2 S LTT+*Or*qM t

U��V � ����������������������������������������������������������

U�V � s*P/t 0O +0.,/t*�

U�V � /t/,/L,* +0)M 0O +rPT0s�

U��V S�2�

U��V .1� 3` S � S�2S� �ax�

U��V � +0)M 0O +rPT0s )/,Q *t,+- � L, S��

U��V � ����������������������������������������������������������

U��V +rPT�� 2 `+rPT0sU�S�V��axU�V +rPT0s

U��V 3 `� � `7+rPT��aU�Vax.1

U��V �

U��V � N*,*+u/t* OLq*M 0O ,Q* q*1Q0/N 0s,L/t*N s- L�`�S�av

U�V � /,M OLq*M LtN ,Q* q0++*M10tN/tP +*Or*q,0+Mw

U�V � ,Q/M q0t,L/tM /tN.q,/0tM,*1 www

U��V L� 2 `� � S� � ;SaxU�VL

U��V OLu� 2 ]Oq+ L�

U��V +*Ou� 2 +*Or*quL, OLu�

U��V �

U��V �

U��V � /t/,/L,* +0)M 0O +rPT��

U��V �

U��V S�2�

U�V .11� 3 ` `7+rPT��aU�V � S� 2 S� �axN*T*,

U�V � +*N.q* ,Q* +0) 0O +rPT�� L, QLtN L, S��

U��V +� 2 +rPT��US��V

U��V +� 2 `� � S� � ;Sax+�

U��V � LtN q0tM/N*+ ,Q* OLq* P*t*+L,*N O0+ ,Q/M r*q,0+

U��V � )+, ,Q* +*N.q*N uL,+/p L��

U��V O� 2 OLu� M**SOLq* +*Ou�vU�V +�

U��V � T00S O0+ ,Q* 01,/uLT r*+,*p 0O L�`S�a +*TL,/r* ,0 O��

U��V /� 2 O� .t/(.*r*+,p L�vU�VLUS��V

U��V � *p,*tN O� LsN LNN ,0 ,Q* OLu/T- /t q0tM,+.q,/0t�

U�V O 2 `S�v/�a M.s*p,O O�

U�V OLqPT0s 2 OLqPT0svU�V y O

U��V 3.11

U�V �

Page 79: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 3: 1st Algorithm � 75

U�V � ����������������������������������������������������������

U�V N*T*,�

U�V +rPT0s 2 S� qLtqT +rPT0s

U�V 3.1

q.e.d.

Page 80: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

76 � Cephoids � Chapter VII �

4 The Second Algorithmaplc7*s4

This algorithm is historically based on the first procedure for enumeratingall faces of a cephoid, see Section 6 of [5]. This original version does notmake use of duality theory, it is fully located in the primal domain.

We distinguish two cases as follows.

Assume first of all K < n. Then any maximal face is l–based with l ≤(K − 1) ≤ (n − 2). That is, a maximal face is essentially determined by aboundary face with at least two dimensions less. This gives rise to a recursiveprocedure: we compute all those boundary faces and extend them to the fulldimension. The matter of extension is also different from the one employedin our first algorithm: for a face of an (n − 2)– dimensional sub–cephoid isit seen that the extension is a rather direct procedure.

Assume then that K ≥ n is the case. According to Corollary 6.8 in [5] weknow that in this case any maximal face of a cephoid has at most (n−1) < Knontrivial reference sets. Thus, we can compute the maximal faces for asum of K0 = n − 1 cephoids. The remaining summands correspond to onedimensional reference sets, in other words, they are vertices of the variousΔ(k). These vertices are uniquely determined according to Theorem 4.2 of[5].

We attempt to describe this step of the algorithm in more detail followingthe 4th step of the proof of Theorem 6.2 in [5].

So we assume K ≤ n − 1. Let F be a maximal face, we know that F is anl–based face with l ≤ K − 1 ≤ n − 2. Consider the representation by thereference system, say

summandssssummandsss (1) F =

K∑k=1

Δ(k)

J(k)

and let L ⊆ I with |L| = l be the set of adjustment indices. As l ≤ n− 2 istrue, there are at least two indices in I that are not elements of L. Assumefor the sake of simplicity that these indices are 1, n.

Now, first of all, consider the projection on �nI\{n}. Then we have Δ

(k)

J(k) ∩�n

I\{n} = Δ(k)

J(k)\{n}.As F I\{n} is maximal with respect to ΠI\{n} =∑K

k=1Δ(k)I\{n}

we note that

(2) F I\{n} =

K∑k=1

Δ(k)

J(k)\{n}.

Page 81: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 4: 2nd Algorithm � 77

Hence, F I\{n} is an l–based face with the same set of boundary indices L.Now F I\{n} or rather the reference system can be computed using the proce-dures defining the functions F(K, n′; �) for n′ < n. This is so as the dimensionhas been reduced properly.

The same procedure can now be followed using the projection on �nI\{1}.

Then, for any k we have computed recursively the index sets

J (k) \ {n} , J (k) \ {1} ,

and asJ (k) = (J (k) \ {n}) ∪ (J (k) \ {1}) .

Instead of two indices this procedure can be performed with any finite numberof indexes not in L.

Thus, for any k ∈K, the index set J (k) is determined via

(3) J (k) =⋃i/∈L

(J (k) \ {i}

)

which defines the face F of Π or an element of F(K, n;a•).

Page 82: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

78 � Cephoids � Chapter VII �

5 The Third Algorithmaplc7*s5

Our third algorithm results from the Bijection Theorem regarding faces andreference vectors of a cephoid, see Theorem 3.2 as well as Corollaries 3.3. and3.4 of [3]. Accordingly, we seek to construct all faces by running through alist of the reference vectors and computing to each such reference vector theappropriate face.

The procedure is recursive as well. It is based on the idea that, for n ≤ K, areference vector has at least one coordinate that equals 1. Indeed, accordingto the definition, a reference vector r = (r1, . . . , rK) has to satisfy rk ≤n (k ∈K) and

K∑κ=1

rk = K + n− 1 .

Now, if rk ≥ 2 holds true for all k ∈K, then we have

n+K − 1 =∑k∈K

rk ≥ 2K,

that is, n− 1 ≥ K.

Hence we are going to deal with the case n ≤ K and the alternative n > Kis treated via an application of Duality Theorem as in the First Algorithm.

Now, consider the case that rK = 1. Then we observe that the vector(r1, . . . , r(K−1)) is a reference vector for the cephoid Π0 :=

∑k∈K\{K}Δ

(k).in view of∑

k∈K\{K}rk =

∑k∈K

rk − 1 = (n +K − 1)− 1 = n+ (K − 1)− 1 .

Therefore, we can obtain the maximal face F 0 of Π0 corresponding to thisreference vector by a recursive procedure as Π0 is a sum of K − 1 deGuasimplices in �n. It remains to construct the maximal face of Π that resultsfrom adding a (unique) vertex a(K)i of Δ(K) to F 0.

Now, this vertex does indeed exist uniquely as is stated in Theorem 4.2 andCorollary 4.4 of [2]. There it is shown that, given the normal n0 of F 0, thereis exactly one vertex a(K)i0 of Δ(K) that admits of this normal, i.e., containsn0 within its normal cone. Of course, this is the unique vertex a(K)i0 thatmaximizes the inner product with n0 over all vertices of Δ(K).

Therefore, adding a(K)i0 to F 0 yields a maximal face of Π which has thecorrect reference vector r. This describes our third procedure for enumeratingall faces of a cephoid.

Page 83: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: 3rd Algorithm � 79

We shall implement this procedure in ��� – code as follows.

1stSTEP : If n = 2 or K = 2 is the case then treat this case directly byprograms \OLqt� and \OLqt�Ss*T v \OLqS�ts*T respectively.

2ndSTEP : If n− 1 ≥ K is the case, apply dualization twice, i.e., essentiallytreat the case n ≤ K − 1.

3rdSTEP : Henceforth assume n ≤ K.

4thSTEP : Given the family a(•) ={a(k)

}k∈K , take any subset of k − 1

elements of this famlily. Consider e.g. {1, . . . , (K − 1)} for the sake of the

argument. Then, by recursion compute all faces of the family{a(k)k∈K−{K}

}.

To any such face F (0), compute the normal n(0). Find the unique vertex a(i0)

of Δ(K) which admits n(0) as a normal. Then F (0) + a(i0) is a face of theoriginal family a(•)

A more detailed description is provided by the following matrix.

)M = q*1QLTP+ =

)M ,0 q0u1.,* LTT OLq*M 0O L q*1Q0/N Lqq0+N/tP ,0 ,Q* ,Q/+N

LTP0+/,Qu )Q/qQ /M sLM*N 0t +*q.+M/0t LT0tP +*O*+*tq* r*q,0+Mw

======================================================================

,Q/M )M q+*L,*N N*q*us*+ ���� x RLt.L+����

======================================================================

uL,+/p = /tO0 =

wa

L q*1Q0/N /M +*1+*M*t,*N s- L S�t uL,+/pw ,Q* +0)M 0O ,Q/M uL,+/p

q0++*M10tN ,0 ,Q* N* P.L M/u1T/q*M /tr0Tr*Nw ,QL, /Mv LU/�V +*OT*q,M

L M/1T*p M1Ltt*N s- r*q,0+M L�`Sa � U�vwwwvLUS�/Vv�wwwv�V `/��vwwwvta

/t +�t[ O0+ S��vwwwvSSw

*pLu1T*� q*1Q10/N =sT.*= /M L M.u 0O � r*q,0+M /t +�

sT.*

��� ��� ��� �� ��� ��� ���

�� �� �� �� � ��

� ��� ��� �� � �� ��

Page 84: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

80 � Cephoids � Chapter VII �

wa

L OLq* 0O L q*1Q0/N /M +*1+*M*t,*N s- L t�S uL,+/pw ,Q/M uL,+/p

+*1+*M*t,M ,Q* +*O*+*tq* OLu/T- 0O ,Q* OLq*v *LqQ +0) q0++*M10tN/tP

,0 Lt /tN*p / 6 // LtN *LqQ q0T.ut 10/t,/tP ,0 L N* P.L M/u1T*p Sw

,Q.Mv q0T.ut S +*OT*q,M ,Q* /tN*p M*, R�`Sa y // 0O ,Q* +*O*+*tq*

OLu/T- N*Mq+/s/tP ,Q* OLq*w

*pLu1T*� sT.*O /M ,Q* M.u 0O ,)0 .t/, r*q,0+M *�� LtN ,Q* O.TT

M/u1T*p N*T,L�`�a

sT.*O

� � �

� � �

� � �

� � �

� � �

� � �

� �

OLq*M qLt s* r/M.LT/o*N s- O.tq,/0t = )+ = )Q/qQ )+/,*M

,Q* +*O*+*tq* OLu/T- /t L u0+* N/+*q, )L-w

*pLu1T*�

)+ sT.*O

� # � # � � � � � � #

wa

L OLu/T- 0O OLq*M /M L r*q,0+v ,Q* q00+N/tL,*M 0O )Q/qQ

L+* /tqT.M/0tM 0O ,Q* u*us*+M 0O ,QL, OLu/T-w ,Q.Mv )* QLr*

7 rr���OLq*t � �� LtN 7 rr���OLq*tU�V � o/TN* )Q/T*

7 zrr���OLq*tU�V � � � v LM ,Q* /tqT.N*N � M, q00*+N/tL,* /M

L � � uL,+/p tLu*T-

zrr���OLq*tU�V

� � � �

� � � �

� � � �

,QL, /M

)+ zrr���OLq*tU�V

Page 85: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: 3rd Algorithm � 81

� # � # � # � � � #

t0)v ,Q* )Q0T* OLu/T- qLt s* r/M.LT/o*N r/L ,Q* O.tq,/0t =)+-=

LM O0TT0)M�

)+- rr���OLq*t

� # � # � # � � � #

� # � # � � # � � #

� # � # � � � # � #

� # � � # � � # � #

� # � � � # � # � #

� # � � # � # � � #

� � � # � # � # � #

� � # � � # � # � #

� � # � # � � # � #

� � # � # � # � � #

����������������������������������������������������������������������

wa

O.tq,/0t =+*Or*quL,=

M-t,Lp

+M 2 +*Or*quL, 1

� ===============================================

� 1 /M L OLu/T- 0O OLq*M� ,-1/qLTT- LTT OLq*M 0O

� L q*1Q0/Nv Q*tq* L N*Mq+/1,/0t 0O ,Q* M.+OLq* 0O

� ,QL, q*1Q0/Nw ,QL, /Mv 1 /M L r*q,0+ ,Q* q00+N/tL,*M

� 0O )Q/qQ L+* /tqT.N*N t � S uL,+/q*M +*1+*M*t,/tP

� OLq*Mw ,Q* O.tq,/0t =+*Or*quL,= -/*TNM ,Q*

� q0++*M10tN/tP +*O*+*tq* r*q,0+Mw LM *LqQ OLq* M.11T/*M

� L +*O*+*tq* r*q,0+v ,Q* +*M.T, /M L uL,+/p ,Q*

� +0)M 0O )Q/qQ 1+0r/N* ,Q* +*O*+*tq* r*q,0+M 0O ,Q*

� OLq*M 0O ,Q* OLu/T- 1w

� ==============================================

*pLu1T*v +*O*++/tP ,0 ,Q* Ls0r* OLu/T- =rr���OLq*t= �

+*Or*quL, rr���OLq*t

� � � �

� � � �

� � � �

Page 86: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

82 � Cephoids � Chapter VII �

� � � �

� � � �

� � � �

� � � �

� � � �

� � � �

� � � �

����������������������������������������������������������������������

wa

O.tq,/0t = LNR.M,q0*O =

M-t,Lp�

q 2 OLq* LNR.M,q0*O L

� ==========================================================

� q0u1.,*M ,Q* LNR.M,u*t, q0*OO/q/*t,M 0O L OLq* =OLq*=

� 0O L q*1Q0/N ,QL, /M P/r*t s- L uL,+/p Lw

� ==========================================================

M.s+0.,/t*M .M*N�

= q0*OOT/tLNR =

`P*t*+L,*M ,Q* q0*OO/q/*t,uL,+/p 0O ,Q*

T/t*L+ LNR.M,u*t, M-M,*uav

= T/t*(M0Tr =

`M0Tr*M ,Q* T/t*L+ *(.L,/0t Lp � sa

*pLu1T*�

sT.*O LNR.M,q0*O sT.*

�w���������� �w���������� �w��������

����������������������������������������������������������������������

wa

O.tq,/0t = ]t0+uLT =

M-t,Lp�

t0+ 2 O ]t0+uLT L

� ==========================================================

� q0u1.,*M ,Q* t0+uLT r/L ,Q* T/t*L+ LNR.M,u*t,M-M,*u LtN

� ,Q* LNR.M,u*t,q0*OO/q/*t,Mw

Page 87: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: 3rd Algorithm � 83

� ������������������

� sLM*N 0t 1+0P+Lu = LNR.M,q0*O = .tN ,Q* M.s+0.,/t*M /tr0Tr*N

� ,Q*+*/tw ,QL, /M M.s�v M.s�v LNR.M,/tNv TuL,+/pv T/t*(M0Trw

� � ==========================================================

*pLu1T*�

sT.*O ]t0+uLT sT.*

�w�������� �w��� �w��������� � �w��������� �w������ �w���������

����������������������������������������������������������������������

wa

O.tq,/0t = .t/(.*r*+,p =

� ==========================================================

� P/r*t M0u* OLq* O� 0O L q*1Q0/N q*1Q LtN L r*q,0+ r*q

� 1+0P+Luu N*,*+u/t*M ,Q* .t/(.* /tN*p /� M.qQ ,QL,

� q00+N/tL,* /� uLp/u/o*M r*qwt0+uLT O�w ,Q.Mv

� O� r*qU/�Vw*�/� /M L qLtN/NL,* O0+ L OLq* 0O L q*1Q0/N

� )/,Q S � N*P.LMw

� ��������������

� /t1.,�

� qr /M q*1Q

� r*q

� ,QL, /Mv r*q QLM T*tP,Q LM P/r*t s- t.us*+ 0O q0T.utM 0O

� q*1Qw ,Q*+*O0+* M-t,Lp u.M, s*

� = /� 2 O� .t/(.* L�vU�V r*q = w

*pLu1T*�

sT.*O .t/(.*r*+,p sT.*vU�V� � � � � � �

����������������������������������������������������������������������

waO.tq,/0t = ]OLqt�SL+s =

� ==========================================================

� O0+ t�� LtN S L+s/,+L+- � �v 1+0P+Lu q0u1.,*M ,Q* OLq* ,0

� +*O*+*tq* r*q,0+ +�`�vwww�v�v�wwww�a 0O L q*1Q0/N P/r*t s-

Page 88: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

84 � Cephoids � Chapter VII �

� L `S��a�uL,+/p Lw

� ==========================================================

M-t,Lp�

OLq* 2 + ]OLqt�SL+s L

s*/M1/*T�

`� sT.*aU�� �V

��� ��

��� ��

���

�� ��

��� ��

��� �

��� ��

� � � � � � � ]OLqt�SL+s `� sT.*aU�� �V

� � � � � � �

� � � � � � �

����������������������������������������������������������������������

wa

O.tq,/0t = M.s*p,O =

� ==========================================================

� M.s+0.,/t* O0+ wwww

� P/r*t L OLq* O 0O N/u*tM/0t `ML-a t � `S��av

� 1+0P+Lu *p,*tNM O /tLMu.qQ LM Lt LNN/,/0tLT

� q0T.ut /M /tM*+,*N LM q0T.ut S�w ,Q/M q0T.ut /M ,Q* r*S,0+

� `�vwwwv�vS�v�vwwwv�a 0O T*tP,Q Sw Q*tq* ,Q* +*M.T,/tP OLq*

� QLM N/u*tM/0tM t � Sw

� Q-10,Q*,/qLTT-v L=/� /M ,Q* uLp/u/o/tP r*q,0+ +*M.T,/tP

� O+0u 1+0P+Lu = .t/(.*r*+,p = )Q/T* S� /M L q00+N/tL,*

� L, )Q/qQ M0u* +*O*+*tq* r*q,0+ + MQ0)M L �w

� S�/� /M `S�v/�aw Q*tq* M-t,Lp MQ0.TN s*

� = `S�v/�a M.s*p,O O =

� *pLu1T*�

sT.*O

Page 89: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: 3rd Algorithm � 85

� � �

� � �

� � �

� � �

� � �

� � �

� �

� � M.s*p,O sT.*O `QL*tP, N/* T*,o,* M1LT,* Lta

� � � �

� � � �

� � � �

� � � �

� � � �

� � � �

� � �

� ==========================================================

����������������������������������������������������������������������

wa

O.tq,/0t = ]Oq+ =

� M-t,Lp�

OLu 2 ]Oq+ L

� ==========================================================

� P*t*+L,*M LTT OLq*M 0O L q*1Q0/N +*1+*M*t,*N s- ,Q*

� S � t uL,+/p Lw sLM*N 0t ,Q* +*q.+M/r* LTP0+/,Qu .M/tP

� ,Q* uL,+/p 0O +*O*+*tq* r*q,0+Mw

� ==========================================================

� 0.,1., /M L OLu/T- 0O OLq*Mv /w*wv L r*q,0+ *LqQ q0u10t*t,

� 0O )Q/qQ /M Lt /tqT.N*N t � S uL,+/p +*1+*M*t,/tP L OLq*w

� ==========================================================

*pLu1T*�

)+- ]Oq+ r/*+r/*+

� # � � � � # � # � #

� # � � � # � � # � #

� # � � � # � # � � #

� # � � # � � � # � #

� # � � # � � # � � #

� # � � # � # � � � #

Page 90: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

86 � Cephoids � Chapter VII �

� # � # � � � � # � #

� # � # � � � # � � #

� # � # � � # � � � #

� # � # � # � � � � #

� � � � # � # � # � #

� � � # � # � � # � #

� � � # � # � # � � #

� � # � # � � � # � #

� � # � # � � # � � #

� � # � # � # � � � #

� � � # � � # � # � #

� � # � � � # � # � #

� � # � � # � # � � #

� � # � � # � � # � #

����������������������������������������������������������������������

wa

O.tq,/0t = ]Oq+,/u* =

� M-t,Lp�

OLq*M 2 ]Oq+,/u* L

� ===============================================================

� ,Q/M /M O.tq,/0t =]Oq+=w Q0)*r*+v L ,/u* u*LM.+/tP /M

� /tqT.N*Nw ,Q* ,0,LT ,/u* O0+ ,0 q0u1T*,* ,Q* q0u1.,L,/0t

� 0O LTT OLq*M 0O L q*1Q0/N /M +*q0+N*Nw

� ===============================================================

� NL,L LO,*+ *p*q.,/0t L11*L+ /t L PT0sLT rL+/LsT* = +*q0+N =

� ,Q/M .M*M ,Q* T/,*+LT rL+/LsT `O0+ua = +*qO0+u = LM 1+0r/N*N

� /t ,Q* )Mw

������������������������������������������������������������

*pLu1T*�

q*1Q0/N = TL+sT.* = /M P/r*t r/L ,Q* uL,+/p

��� ��� ��� �� ��� ��� ���

�� �� �� �� � ��

� ��� ��� �� � �� ��

�� � �� �� �� �� ���

�� �� �� �� �� � �

� �� � ��� �� �� �

Page 91: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: 3rd Algorithm � 87

OLq*M L+* T/M,*t /t rL+/LsT* = TL+sTOLq*M =w ,Q* ,/u* *TL1M*N

,0 q0u11.,* ,Q*M* OLq*M `Ls0., � u/t ��w� M*qMa )LM M,L,*N /t

= +*q0+N = LM O0TT0)M�

+*q0+N

���������������,/u* *TL1M*N +*q0+N����������������

wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww�

s*P/t� �

���� � �� �� � �� ��

���������������������������� �

*tN� �

���� � �� �� � �� ��

============================

- u N h � d dx���� �

============================ ��

*TL1M*N ,/u*� ��

� � � � � �� ���

============================ ��

For completeness we reproduce here the final result of this WS which isprovided by the function = ]Oq+ =

U �V OLqPT0s 2 ]Oq+ L�S�t�N�+rPT0s�S��+rPT���L��OLu��+*Ou��S��O��/��O�+�

U �V �

U �V � ==========================================================

U �V � P*t*+L,*M LTT OLq*M 0O L q*1Q0/N +*1+*M*t,*N s- ,Q*

U �V � S � t uL,+/p Lw sLM*N 0t ,Q* +*q.+M/r* LTP0+/,Qu .M/tP

U �V � ,Q* uL,+/p 0O +*O*+*tq* r*q,0+Mw

U �V � ==========================================================

U V � 0.,1., /M L OLu/T- 0O OLq*Mv /w*wv L r*q,0+ *LqQ q0u10t*t,

U V � 0O )Q/qQ /M Lt /tqT.N*N t � S uL,+/p +*1+*M*t,/tP L OLq*w

U �V � ==========================================================

U��V �

U��V �NL,L�

U��V S 2 `7LaU�V

U��V t 2 `7LaU�V

U��V � S � � 0+ t��� +*N.q,/0t ,0 1+0P+LuM Lqq0+N/tPT-w

U��V � ������������������������������������������������

Page 92: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

88 � Cephoids � Chapter VII �

U��V 3`S��axq0tS

U�V OLqPT0s 2 ]OLqS�ts*T L

U�V 3�

U��V � ������������������������������������������������

U��V q0tS�

U��V �

U��V 3`t��axq0tt

U��V OLqPT0s 2 ]OLqt�Ss*T

U��V 3�

U��V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U��V q0tt�

U�V � /O t *pq**NM Sv ,Q*t .M* ,Q* N.LT r*+M/0t�

U�V 3`t�Sax1+/uLT

U��V OLqPT0s 2 N.LTOLu ]Oq+ � L

U��V 3�

U��V � wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

U��V 1+/uLT�

U��V OLqPT0s 2 �7�

U��V � ,Q* uL,+/p 0O +*O*+*tq* r*q,0+M `Svta�

U��V +rPT0s 2 S LTT+*Or*qM t

U��V � ����������������������������������������������������������

U�V � s*P/t 0O +0.,/t*�

U�V � /t/,/L,* +0)M 0O +rPT0s�

U��V S�2�

U��V .1� 3` S � S�2S� �ax�

U��V � +0)M 0O +rPT0s )/,Q *t,+- � L, S��

U��V � ����������������������������������������������������������

U��V +rPT�� 2 `+rPT0sU�S�V��axU�V +rPT0s

U��V 3 `� � `7+rPT��aU�Vax.1

U��V �

U��V � N*,*+u/t* OLq*M 0O ,Q* q*1Q0/N 0s,L/t*N s- L�`�S�av

U�V � /,M OLq*M LtN ,Q* q0++*M10tN/tP +*Or*q,0+Mw

U�V � ,Q/M q0t,L/tM /tN.q,/0tM,*1 www

U��V L� 2 `� � S� � ;SaxU�VL

U��V OLu� 2 ]Oq+ L�

U��V +*Ou� 2 +*Or*quL, OLu�

U��V �

U��V �

U��V � /t/,/L,* +0)M 0O +rPT��

U��V �

U��V S�2�

Page 93: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

� Section 5: 3rd Algorithm � 89

U�V .11� 3 ` `7+rPT��aU�V � S� 2 S� �axN*T*,

U�V � +*N.q* ,Q* +0) 0O +rPT�� L, QLtN L, S��

U��V +� 2 +rPT��US��V

U��V +� 2 `� � S� � ;Sax+�

U��V � LtN q0tM/N*+ ,Q* OLq* P*t*+L,*N O0+ ,Q/M r*q,0+

U��V � )+, ,Q* +*N.q*N uL,+/p L��

U��V O� 2 OLu� M**SOLq* +*Ou�vU�V +�

U��V � T00S O0+ ,Q* 01,/uLT r*+,*p 0O L�`S�a +*TL,/r* ,0 O��

U��V /� 2 O� .t/(.*r*+,p L�vU�VLUS��V

U��V � *p,*tN O� LsN LNN ,0 ,Q* OLu/T- /t q0tM,+.q,/0t�

U�V O 2 `S�v/�a M.s*p,O O�

U�V OLqPT0s 2 OLqPT0svU�V y O

U��V 3.11

U�V �

U�V � ����������������������������������������������������������

U�V N*T*,�

U�V +rPT0s 2 S� qLtqT +rPT0s

U�V 3.1

Page 94: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics
Page 95: Algorithms for Concepts in the Theory of Cooperative Games · APL andGames Algorithms for Concepts in the Theory of Cooperative Games JoachimRosenm¨uller1 1InstituteofMathematicalEconomics

Bibliography

GUA83 [1] J. P. de Gua de Malves, Article on : The n-dimensional PythagoreanTheorem, in: Histoire de l’Academie des Sciences pour l’ann’ee 1783, cf.Guggenheimer, Mathematical Reviews 1136610.

PALROM04II [2] D. Pallaschke and J. Rosenmuller, Computing the Minkowski sum ofprisms, Journal of Global Optimization 35 (2006), 321–341.

PALROM07IMW [3] , Cephoids: Duality and reference vectors, Working paper No. 389,Institute of Mathematical Economics, University of Bielefeld. To appearin Pacific Journal of Optimization, 2007.

PALROM04III [4] , A superadditive solution for cephoidal bargaining problems, In-ternational Journal of Game Theory 35 (2007), 569–590.

PALROM04I [5] , Cephoids: Minkowski sums of deGua simplexes, Journal of Op-timization 59(4) (2010), 515–540.

91