Please pay attention to the type of the F parameter in each definition.
The math notation (as is typical) hides the typing and leaves it for the reader to determine on their own. As such, it can be challenging to know whether you are indexing a family of sets or relations. Hopefully, this page will help clear that up.
Indexed Union
Family of Relations
CupIABF:={xāA,yāB:ā(iāI::(x,y)āF[i])}
I,A,BāSet
Fā(AāB)I
Notation.
CupIABF can be written as CupIF when A and B are clear from the context.
CupIF is written with symbols as āiāIāFiā
āiāIāFiā can be written as ā(i:iāI:F.i)
fun Cup(I,A,B: set univ, F: I->A->B) : A->B {
{ x: A, y: B | some i: I | x->y in i.F }
}
Family of Sets
CupIAF:={xāA:ā(iāI::xāF[i])}
I,AāSet
FāIāA
Notation.
CupIAF can be written as CupIF when A is clear from the context.
CupIF is written with symbols as āiāIāFiā
āiāIāFiā can be written as ā(i:iāI:F.i)
fun Cup(I,A: set univ, F: I->A) : set A {
{ x: A | some i: I | x in i.F }
}
Indexed Intersection
Family of Relations
CapIABF:={xāA,yāB:ā(iāI::(x,y)āF[i])}
I,A,BāSet
Fā(AāB)I
Notation.
CapIABF can be written as CapIF when A and B are clear from the context.
CapIF is written with symbols as āiāIāFiā
āiāIāFiā can be written as ā(i:iāI:F.i)
fun Cap(I,A,B: set univ, F: I->A->B) : A->B {
{x: A, y: B | all i: I | x->y in i.F }
}
Family of Sets
CapIAF:={xāA:ā(iāI::xāF[i])}
I,AāSet
FāIāA
Notation.
CapIAF can be written as CapIF when A is clear from the context.
CapIF is written with symbols as āiāIāFiā
āiāIāFiā can be written as ā(i:iāI:F.i)
fun Cap(I,A: set univ, F: I->A) : set A {
{ x: A | all i: I | x in i.F }
}