lattice polynomial

lattice polynomial

A

lattice polynomial

, informally, is an

expression

involving a finite number of

variables

x

,

y

,

z

,

…

, two symbols

∨

,

∧

, and sometimes the parentheses

(

,

)

in a

meaningful manner

. Loosely speaking, whenever

p

and

q

are lattice polynomials, the only lattice polynomials that can be formed from

p

,

q

,

∨

,

∧

are

p

∨

q

and

p

∧

q

. We will explain formally what

meaningful manner

is a little later. Some examples of lattice polynomials are

x

∨

(

x

∨

x

)

,

(

y

∧

x

)

∨

x

, and

(

x

∨

y

)

∧

(

y

∨

z

)

∧

(

z

∨

x

)

, while

∨

∧

x

,

x

⁢

y

∧

y

⁢

z

,

z

∨

)

(

are not lattice polynomials.

To formally define what a lattice polynomial is, we resort to

model theory

. To begin with, we have a

countable set

of variables

V

=

{

x

,

y

,

z

,

…

}

, a set of binary function symbols

F

=

{

∨

,

∧

}

. We define

pairwise disjoint

sets

S

0

,

S

1

,

…

,

S

n

,

…

recursively, as follows:

•

S

0

=

V

,

•

S

k

+

1

=

{

(

p

∨

q

)

,

(

p

∧

q

)

∣

p

,

q

∈

S

k

}

∪

S

k

.

Then we set

S

=

⋃

i

=

0

∞

S

i

. An element of

S

is called a

lattice polynomial

.

Note that in the above

definition

,

(

(

x

∨

y

)

∨

z

)

is a lattice polynomial while

(

x

∨

y

∨

z

)

is not, for any variables

x

,

y

,

z

∈

V

. To reduce the number of parentheses in a lattice polynomial, we typically identify

(

p

∨

q

)

with

p

∨

q

and

(

p

∧

q

)

with

p

∧

q

. In

addition

, since the meet and join

operations

are associative in any

lattice

, it is a common practice to further reduce the number of parentheses in a lattice polynomial by identifying both

(

p

∨

(

q

∨

r

)

)

and

(

(

p

∨

q

)

∨

r

)

with

p

∨

q

∨

r

, and

(

p

∧

(

q

∧

r

)

)

and

(

(

p

∧

q

)

∧

r

)

with

p

∧

q

∧

r

.

Another thing that can be said about the above construction of is that any given lattice polynomial can be constructed from

S

0

in a finite number of steps. If

p

∈

S

n

-

S

n

-

1

,

n

≥

1

, then

p

can be constructed in exactly

n

steps. The minimum number of variables (in

S

0

) that is required to construct

p

is called the

arity

of

p

. For example, if

p

=

(

(

x

∨

y

)

∧

x

)

then the arity of

p

is

2

. If an

n

-ary lattice polynomial

p

can be constructed from

x

1

,

…

,

x

n

, we often write

p

=

p

⁢

(

x

1

,

…

,

x

n

)

.

One more important number associated with a lattice polynomial

p

is its

weight

, defined recursively as

w

⁢

(

p

)

=

1

if

p

∈

S

0

, and

w

⁢

(

p

∨

q

)

=

w

⁢

(

p

∧

q

)

=

w

⁢

(

p

)

+

w

⁢

(

q

)

.

Given any

n

-ary lattice polynomial

p

and any lattice

L

, we can associate

p

with an

m

-ary

lattice polynomial function

f

:

L

m

→

L

defined by

f

⁢

(

a

1

,

…

,

a

m

)

:=

p

⁢

(

a

1

,

…

,

a

n

)

,

where

⁢

m

≥

n

⁢

and

⁢

a

i

∈

L

.

The expression

p

⁢

(

a

1

,

…

,

a

n

)

is the

evaluation

of

p

at

(

a

1

,

…

,

a

n

)

. That is, we substitute each

x

i

for

a

i

, and we interpret

∨

and

∧

in

p

as the join and meet operations in

L

.

Two lattice polynomials

p

,

q

of arities

m

,

n

, where

m

≥

n

, are said to be

equivalent

if their corresponding

m

-ary lattice polynomial functions evaluate to the same values in any lattice. For example,

x

∨

y

and

y

∨

x

are equivalent. Similarly,

x

,

x

∨

x

,

x

∧

x

, and

x

∨

(

y

∧

x

)

are equivalent lattice polynomials.

Remark

. Similarly, one can define a

Boolean polynomial

by enlarging the set

F

of

function symbols

to include the unary

operator

′

, and

S

k

+

1

=

{

(

p

∨

q

)

,

(

p

∧

q

)

,

(

p

′

)

∣

p

,

q

∈

S

k

}

∪

S

k

. Then a Boolean polynomial is just an element of

S

=

∪

i

=

0

∞

S

i

. The weight of a Boolean polynomial is similarly defined, with the additional

w

⁢

(

p

′

)

=

w

⁢

(

p

)

.

Title

lattice polynomial

Canonical

name

LatticePolynomial

Date of creation

2013-03-22 16:30:53

Last modified on

2013-03-22 16:30:53

Owner

CWoo (3771)

Last modified by

CWoo (3771)

Numerical id

9

Author

CWoo (3771)

Entry type

Definition

Classification

msc 06B25

Defines

lattice polynomial function

Defines

equivalent lattice polynomials

Defines

weight of a lattice polynomial

Defines

arity of a lattice polynomial

Defines

Boolean polynomial

Generated on Fri Feb 9 09:57:04 2018 by

LaTeXML