A Generalized Next-Closure Algorithm – Enumerating Semilattice Elements from a Generating Set
Daniel Borchmann
TU Dresden, Institute of Algebra daniel.borchmann@mailbox.tu-dresden.de
Málaga, 14. October 2012
Motivation
Reminder
The Next-Closure algorithm successively computes all closed sets of a closure operatorcon a finite setM.
Definition (Closure Operators on Sets)
LetM be a set. Thenc: P
(
M)
ÝÑP(
M)
is called aclosure operatoronMif and only ifcisextensive, i. e.AĎc
(
A)
for allAĎMcismonotone, i. e.AĎBĎMimpliesc
(
A)
Ďc(
B)
cisidempotent, i. e.c(
c(
A)) =
Afor allAĎM.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 2 / 13
Motivation
Reminder
The Next-Closure algorithm successively computes all closed sets of a closure operatorcon a finite setM.
Definition (Closure Operators on Sets)
LetM be a set. Thenc: P
(
M)
ÝÑP(
M)
is called aclosure operatoronMif and only ifcisextensive, i. e.AĎc
(
A)
for allAĎMcismonotone, i. e.AĎBĎMimpliesc
(
A)
Ďc(
B)
cisidempotent, i. e.c(
c(
A)) =
Afor allAĎM.Goal
Problem
How to enumerate things that are not closure operators on sets?
closure operators in a fuzzy setting? closure operators on ordered sets? Goal
Generalize Next-Closure to arbitrary closure operatorsonce and for all.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 3 / 13
Goal
Problem
How to enumerate things that are not closure operators on sets?
closure operators in a fuzzy setting?
closure operators on ordered sets? Goal
Generalize Next-Closure to arbitrary closure operatorsonce and for all.
Goal
Problem
How to enumerate things that are not closure operators on sets?
closure operators in a fuzzy setting?
closure operators on ordered sets?
Goal
Generalize Next-Closure to arbitrary closure operatorsonce and for all.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 3 / 13
Goal
Problem
How to enumerate things that are not closure operators on sets?
closure operators in a fuzzy setting?
closure operators on ordered sets?
Goal
Generalize Next-Closure to arbitrary closure operatorsonce and for all.
Next-Closure
Definition (Lectic Order)
Letăbe a strict linear order onM,iPMandA,BĎM.
ThenAăi Bif and only if
i
=
minď(
AzBYBzA)
andi PB. Furthermore,AăBif and only ifAăi Bfor somei PM. DefinitionLeti PM,AĎMsuch thatc
(
A) =
A. Then define A‘i :=
c(
tj PA|j ăiu Y tiu)
.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 4 / 13
Next-Closure
Definition (Lectic Order)
Letăbe a strict linear order onM,iPMandA,BĎM. ThenAăi Bif and only if
i
=
minď(
AzBYBzA)
andi PB.Furthermore,AăBif and only ifAăi Bfor somei PM. Definition
Leti PM,AĎMsuch thatc
(
A) =
A. Then define A‘i :=
c(
tj PA|j ăiu Y tiu)
.Next-Closure
Definition (Lectic Order)
Letăbe a strict linear order onM,iPMandA,BĎM. ThenAăi Bif and only if
i
=
minď(
AzBYBzA)
andi PB. Furthermore,AăBif and only ifAăi Bfor somei PM.Definition
Leti PM,AĎMsuch thatc
(
A) =
A. Then define A‘i :=
c(
tj PA|j ăiu Y tiu)
.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 4 / 13
Next-Closure
Definition (Lectic Order)
Letăbe a strict linear order onM,iPMandA,BĎM. ThenAăi Bif and only if
i
=
minď(
AzBYBzA)
andi PB. Furthermore,AăBif and only ifAăi Bfor somei PM.Definition
Leti PM,AĎMsuch thatc
(
A) =
A. Then define A‘i :=
c(
tj PA|j ăiu Y tiu)
.Next-Closure
Theorem (Next-Closure)
Let A‰M be such that c
(
A) =
A. DefineA+ :
=
minătBĎM|c(
B) =
B,AăBu.Then
A+
=
A‘i where i is maximal with Aăi A‘i.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 5 / 13
Next-Closure
Theorem (Next-Closure)
Let A‰M be such that c
(
A) =
A. DefineA+ :
=
minătBĎM|c(
B) =
B,AăBu.Then
A+
=
A‘i where i is maximal with Aăi A‘i.Generalizing Next-Closure
Now consider the expressionA‘i in more detail:
A‘i
=
c(
tj PA|j ăiu Y tiu)
=
c(
c(
tj PA|j ăiu)
Yc(
tiu))
=
:c(
tj PA|j ăiu)
_c(
tiu)
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
Observation
We can solely work in thesemilattice
(
im(
c)
,_)
of all closed sets ofc! GoalGeneralize Next-Closure to work onarbitrary, abstractly given semilattices.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 6 / 13
Generalizing Next-Closure
Now consider the expressionA‘i in more detail:
A‘i
=
c(
tj PA|j ăiu Y tiu)
=
c(
c(
tj PA|j ăiu)
Yc(
tiu))
=
:c(
tj PA|j ăiu)
_c(
tiu)
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
Observation
We can solely work in thesemilattice
(
im(
c)
,_)
of all closed sets ofc! GoalGeneralize Next-Closure to work onarbitrary, abstractly given semilattices.
Generalizing Next-Closure
Now consider the expressionA‘i in more detail:
A‘i
=
c(
tj PA|j ăiu Y tiu)
=
c(
c(
tj PA|j ăiu)
Yc(
tiu))
=
:c(
tj PA|jăiu)
_c(
tiu)
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
Observation
We can solely work in thesemilattice
(
im(
c)
,_)
of all closed sets ofc! GoalGeneralize Next-Closure to work onarbitrary, abstractly given semilattices.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 6 / 13
Generalizing Next-Closure
Now consider the expressionA‘i in more detail:
A‘i
=
c(
tj PA|j ăiu Y tiu)
=
c(
c(
tj PA|j ăiu)
Yc(
tiu))
=
:c(
tj PA|jăiu)
_c(
tiu)
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
Observation
We can solely work in thesemilattice
(
im(
c)
,_)
of all closed sets ofc! GoalGeneralize Next-Closure to work onarbitrary, abstractly given semilattices.
Generalizing Next-Closure
Now consider the expressionA‘i in more detail:
A‘i
=
c(
tj PA|j ăiu Y tiu)
=
c(
c(
tj PA|j ăiu)
Yc(
tiu))
=
:c(
tj PA|jăiu)
_c(
tiu)
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
Observation
We can solely work in thesemilattice
(
im(
c)
,_)
of all closed sets ofc!Goal
Generalize Next-Closure to work onarbitrary, abstractly given semilattices.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 6 / 13
Generalizing Next-Closure
Now consider the expressionA‘i in more detail:
A‘i
=
c(
tj PA|j ăiu Y tiu)
=
c(
c(
tj PA|j ăiu)
Yc(
tiu))
=
:c(
tj PA|jăiu)
_c(
tiu)
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
Observation
We can solely work in thesemilattice
(
im(
c)
,_)
of all closed sets ofc!Generalizing Next-Closure
Plan
Things we have to generalize:
prerequisites (setting) lectic orders
A‘i
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 7 / 13
Generalizing Next-Closure
Plan
Things we have to generalize:
prerequisites (setting)
lectic orders A‘i
Generalizing Next-Closure
Plan
Things we have to generalize:
prerequisites (setting) lectic orders
A‘i
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 7 / 13
Generalizing Next-Closure
Plan
Things we have to generalize:
prerequisites (setting) lectic orders
A‘i
Generalizing Next-Closure – The Setting
Let
(
L,ďL)
be a finitesemilattice, i. e.(
L,ďL)
is a finite ordered set andfor allx,yPLexists a least upper boundx_yofxandy.
Lettx1,. . .,xnu ĎLbe a generating set of
(
L,ďL)
, i. e. for eachyPLit is true thaty
=
łxiďLy
xi.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 8 / 13
Generalizing Next-Closure – The Setting
Let
(
L,ďL)
be a finitesemilattice, i. e.(
L,ďL)
is a finite ordered set andfor allx,yPLexists a least upper boundx_yofxandy.
Lettx1,. . .,xnu ĎLbe a generating set of
(
L,ďL)
, i. e. for eachyPLit is true thaty
=
łxiďLy
xi.
Generalizing Next-Closure – The Setting
Let
(
L,ďL)
be a finitesemilattice, i. e.(
L,ďL)
is a finite ordered set andfor allx,yPLexists a least upper boundx_yofxandy.
Lettx1,. . .,xnu ĎLbe a generating set of
(
L,ďL)
,i. e. for eachyPLit is true that
y
=
łxiďLy
xi.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 8 / 13
Generalizing Next-Closure – The Setting
Let
(
L,ďL)
be a finitesemilattice, i. e.(
L,ďL)
is a finite ordered set andfor allx,yPLexists a least upper boundx_yofxandy.
Lettx1,. . .,xnu ĎLbe a generating set of
(
L,ďL)
, i. e. for eachyPLit is true thaty
=
łxiďLy
xi.
Generalizing Next-Closure – Lectic Orders
Recall
Aăi B ðñ i
=
mină(
AzBYBzA)
andtiu ĎB.Definition
Let 1ďi ďnanda,bPL. Then define
aăi b :ðñ i
=
min∆a,b andxi ďLb, where∆a,b:
=
ti |(
xi ďLaandxi ęLb)
or(
xi ęL aandxi ďL b)
u.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 9 / 13
Generalizing Next-Closure – Lectic Orders
Recall
Aăi B ðñ i
=
mină(
AzBYBzA)
andtiu ĎB. DefinitionLet 1ďi ďnanda,bPL. Then define
aăi b :ðñ i
=
min∆a,b andxi ďLb,where
∆a,b:
=
ti |(
xi ďLaandxi ęLb)
or(
xi ęL aandxi ďL b)
u.Generalizing Next-Closure – Lectic Orders
Recall
Aăi B ðñ i
=
mină(
AzBYBzA)
andtiu ĎB. DefinitionLet 1ďi ďnanda,bPL. Then define
aăi b :ðñ i
=
min∆a,b andxi ďLb, where∆a,b:
=
ti |(
xi ďLaandxi ęLb)
or(
xi ęL aandxi ďL b)
u.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 9 / 13
Generalizing Next-Closure – A ‘ i
Recall
A‘i
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
.Definition
LetaPLand 1ďi ďn. Define
a‘i :
=
łjăi,xjďa
xj_xi.
Generalizing Next-Closure – A ‘ i
Recall
A‘i
=
łjăi c(tju)ĎA
c
(
tju)
_c(
tiu)
.Definition
LetaPLand 1ďi ďn. Define
a‘i :
=
łjăi,xjďa
xj _xi.
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 10 / 13
Generalizing Next-Closure
Theorem
Let aPL. Define
a+ :
=
minătbPL|aăbu.Then, if this minimum exists,
a+
=
a‘i with i being maximal with aăi a‘i.Generalizing Next-Closure
Theorem
Let aPL. Define
a+ :
=
minătbPL|aăbu.Then, if this minimum exists,
a+
=
a‘i with i being maximal with aăi a‘i.Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 11 / 13
Instances of the Generalized Algorithm
Consider the case of computing intents of a formal contextK
= (
G,M,I)
.Original Next-Closure is Generalized Next-Closure for the semilattice
(
Int(
K)
,_)
whereA_B:= (
AYB)
2and generating settm2 |mPMu Y t H2u.
One can also consider the semilattice
(
Int(
K)
,X)
with generating set tg1 |gPGu Y tMu.Yields an algorithm with a lot of similarities toClose-by-One!
Instances of the Generalized Algorithm
Consider the case of computing intents of a formal contextK
= (
G,M,I)
. Original Next-Closure is Generalized Next-Closure for the semilattice(
Int(
K)
,_)
whereA_B:= (
AYB)
2and generating settm2 |mPMu Y t H2u.
One can also consider the semilattice
(
Int(
K)
,X)
with generating set tg1 |gPGu Y tMu.Yields an algorithm with a lot of similarities toClose-by-One!
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 12 / 13
Instances of the Generalized Algorithm
Consider the case of computing intents of a formal contextK
= (
G,M,I)
. Original Next-Closure is Generalized Next-Closure for the semilattice(
Int(
K)
,_)
whereA_B:= (
AYB)
2and generating settm2 |mPMu Y t H2u.
One can also consider the semilattice
(
Int(
K)
,X)
with generating set tg1 |gPGu Y tMu.Yields an algorithm with a lot of similarities toClose-by-One!
Instances of the Generalized Algorithm
Consider the case of computing intents of a formal contextK
= (
G,M,I)
. Original Next-Closure is Generalized Next-Closure for the semilattice(
Int(
K)
,_)
whereA_B:= (
AYB)
2and generating settm2 |mPMu Y t H2u.
One can also consider the semilattice
(
Int(
K)
,X)
with generating set tg1 |gPGu Y tMu.Yields an algorithm with a lot of similarities toClose-by-One!
Daniel Borchmann Enumerating Semilattice Elements Málaga, 14. October 2012 12 / 13