Nominal Sets, Data Symmetries and OrdNom Hans-Peter Deifel - - PowerPoint PPT Presentation

nominal sets data symmetries and ordnom
SMART_READER_LITE
LIVE PREVIEW

Nominal Sets, Data Symmetries and OrdNom Hans-Peter Deifel - - PowerPoint PPT Presentation

Nominal Sets, Data Symmetries and OrdNom Hans-Peter Deifel Oberseminar 21.01.2020 1 / 43 Motivation Theres more than one way to skin a category. Abstract syntax with names and name binding Slightly infjnite structures Data


slide-1
SLIDE 1

Nominal Sets, Data Symmetries and OrdNom

Hans-Peter Deifel Oberseminar 21.01.2020

1 / 43

slide-2
SLIDE 2

Motivation

There’s more than one way to skin a category. Abstract syntax with names and name binding “Slightly infjnite” structures Data accessible via a limited interface

2 / 43

slide-3
SLIDE 3

Motivation

Abstract Syntax: Abstract Syntax Trees Free Variables Name Dependence Binders α-equivalence

3 / 43

slide-4
SLIDE 4

Motivation

“Slightly Infjnite” sets: (x, y) ∈ A × A Under consistent bijective renaming: Only two cases: x = y and x = y “Generated” by: (a, a) and a, b

4 / 43

slide-5
SLIDE 5

[G, Set]

5 / 43

slide-6
SLIDE 6

[G, Set]

Groups

Defjnition

A group G is a set equipped with: A composition function G · G → G A unit element e ∈ G For each element a ∈ G, an inverse a−1 ∈ G such that (unit): e · a = a = a · e for all a ∈ G (assoc): a · (b · c) = (a · b) · c for all a, b, c ∈ G (invers): a · a−1 = e for all a ∈ G ⇒ Also: a category with one object!

6 / 43

slide-7
SLIDE 7

[G, Set]

Groups

Example

Sym(X): All bijections on X

7 / 43

slide-8
SLIDE 8

[G, Set]

Group Actions

Group Action

Action of G on set X is function ·: G × X → X, s.t.: a · (b · x) = (a · b) · x e · x = x

G-Sets

Sets equipped with action of G called G-Set. G-Sets form a category [G, Set] morphisms: Equivariant functions f : A → B, s.t. f(π · x) = π · f(x)

8 / 43

slide-9
SLIDE 9

[G, Set]

Group Actions

Example

Σ signature, X variables. Σ-terms over X. Defjne group action of Sym(X) recursively on term t: π · x = π(x) π · op(t1, . . . , tn) = op(π · t1, . . . , π · tn)

9 / 43

slide-10
SLIDE 10

[G, Set]

Constructions

Products

Product of G-Sets X1, . . . , Xn: X1 × · · · × Xn with action: π · (x1, . . . , xn) = (π · x1, . . . , π · xn)

Coproducts

Product of G-Sets X1, . . . , Xn: X1 + · · · + Xn with action: π · inji x = inji(π · x) ⋔: Extends to infjnite products/coproducts.

10 / 43

slide-11
SLIDE 11

[G, Set]

Constructions

Exponentials

Given G-sets X, Y : Defjne G-action on set of all functions Y X: (π · f)(x) = π · f(π−1 · x) ⋔ app : Y X × X → Y and curry(f : X × Y → Z): X → ZY are equivariant. ⋔: [G, Set] is CCC!

11 / 43

slide-12
SLIDE 12

[G, Set]

Constructions

Subobjects

A subset S of a G-Set X is an equivariant subset if: π · S = S ∀π ∈ G Subobjects of G-Set X ⇔ equivariant subsets of X.

Subobject Classifjer

B = {true, false} = 1 + 1 is subobject classifjer in [G, Set]. ⋔: [G, Set] is Boolean topos!

12 / 43

slide-13
SLIDE 13

Nominal Sets

The Original

13 / 43

slide-14
SLIDE 14

Nominal Sets

Names

Names

Fix an infjnite set A of names {a, b, c, . . .}. Abstract “atomic” names Can be compared for equality No further structure ⋔ Intuition: Variables

14 / 43

slide-15
SLIDE 15

Nominal Sets

Permutations

Names

Fix an infjnite set A of names {a, b, c, . . .}.

Permutations

Fix the group G = Perm A of fjnite permutations of A. Note: A is itself a Perm(A)-Set with action π · a = π(a).

15 / 43

slide-16
SLIDE 16

Nominal Sets

Name Dependence

Support

Let X be Perm A-set. A set of names A ⊆ A is a support for x ∈ X if ∀π ∈ Perm A: (∀a ∈ A. π · a = a) ⇒ π · x = x

Nominal Set

A nomial set X is a Perm A-set, s.t. every x ∈ X has fjnite support.

16 / 43

slide-17
SLIDE 17

Nominal Sets

Examples

The set of names A

∀a ∈ A. supp a = {a}

Discrete Nominal Set

Set X with Perm A-action π · x = x. ∀x ∈ X. supp x = ∅

Σ-Terms

∀t ∈ Σ[A]. supp t = freevars(t)

17 / 43

slide-18
SLIDE 18

Nominal Sets

Least support

A1, A2 fjnite supports for x ∈ X ⇒ so is A1 ∩ A2

Least Support

X nominal set and x ∈ X. Then: suppX x = ∩ {A ∈ PA | A is fjnite support for x} ⋔-fact: supp is an equivariant function!

18 / 43

slide-19
SLIDE 19

Nominal Sets

Nom, Nom, Nom…

Nom

Nominal sets objects in category: Morphisms: Equivariant functions, as in [Perm A, Set] ⋔: Full subcategory of [Perm A, Set]

19 / 43

slide-20
SLIDE 20

Nominal Sets

Constructions

Coproducts & Finite Products

Same as in [Perm A, Set] supp(x1, . . . , xn) = supp x1 ∪ · · · ∪ supp xn supp(inji x) = supp x

Infjnite Products

i∈I supp xi may not be fjnite for inifjnite I

But: Nom is co-refmective subcategory of [Perm A, Set]

20 / 43

slide-21
SLIDE 21

Nominal Sets

Products

Infjnite Products

i∈I supp xi may not be fjnite for inifjnite I

But: Nom is co-refmective subcategory of [Perm A, Set] For each [Perm A, Set] set X, there is Xfs → X, s.t. Y Xfs X

f ¯ f

where Xfs = {x ∈ X | x is fjnitely supported in X}

21 / 43

slide-22
SLIDE 22

Nominal Sets

Topos?!

Exponentials

Same thing: (Y X)fs exponential in Nom

Subobjects

Same as in [Perm A, Set]

Subobject Classifjer

Same as in [Perm A, Set] ⋔: Boolean Topos!

22 / 43

slide-23
SLIDE 23

Data Symmetries

More Polish!

23 / 43

slide-24
SLIDE 24

Data Symmetries

Data Symmetry

(D, G) D a set of data G ≤ Sym(D) Intuition: D data with some limited structure or

  • nly accessible by limited interface

24 / 43

slide-25
SLIDE 25

Data Symmetries

Examples

Equality Symmetry (A, Perm A) i.e. the thing from the last few slides. In polish notation: A = N Total Order Symmetry (Q, Mob(Q)) Mob(Q) = {π ∈ Sym(Q) | x < y ⇒ π · x < π · y} i.e. the thing from the few last slides. Integer Symmetry (Z, Trans(Z)) Trans(Z) group of translations i → i + c

25 / 43

slide-26
SLIDE 26

Data Symmetries

Orbits

Orbit

For x in G-set X, G · x = {π · x | x ∈ G} ⊆ X is called orbit of x. ⋔-fact: Any G-Set partitionend into its orbits.

26 / 43

slide-27
SLIDE 27

Data Symmetries

Orbits

Orbit

G · x = {π · x | x ∈ G} ⊆ X

Example

Consider D2: Equality Symmetry: Two orbits: {(a, a) | a ∈ A} {(a, b) | a = b ∈ A} Total Order Symmetry: Three orbits: {(x, y) | x < y ∈ Q} {(x, x) | x ∈ Q} {(x, y) | x > y ∈ Q}

27 / 43

slide-28
SLIDE 28

Data Symmetries

Support

Support, nominal set, equivariant function defjned as in Nom.

Least Support

Does a fjnitely supported x ∈ X have a least support? Equality Symmetry: Yes (see previous slides) Total Order Symmetry: Yes (N × N, {π × π | π ∈ Sym(N)}): Nope! See next slide.

28 / 43

slide-29
SLIDE 29

Data Symmetries

Support

Data symmetry: (N × N, {π × π | π ∈ Sym(N)}). The element (0, 1) ∈ N × N has three minimal supports: {(0, 1)} {(1, 0)} {(0, 0), (1, 1)} ⋔: But no least support

29 / 43

slide-30
SLIDE 30

Representations

30 / 43

slide-31
SLIDE 31

Representations

Single Orbits

Coset

Given a subgroup H ≤ G, π ∈ G: πH = {πσ | σ ∈ H} ⊆ G ⋔-fact: G partitioned into cosets for H.

31 / 43

slide-32
SLIDE 32

Representations

Single Orbits

Coset Space

G ⧸ H = {πH | π ∈ G} G-action on coset space: σ · (πH) = (σπ)H ⋔-fact: G ⧸ H is single-orbit G-Set

32 / 43

slide-33
SLIDE 33

Representations

Single Orbits

Stabilizer

Given G-set X, x ∈ X: Gx = {π ∈ G | π · x = x} ≤ G

X ∼ = G ⧸ Gx

Any single orbit G-set X is isomorphic to G ⧸ Gx for any x ∈ X.

33 / 43

slide-34
SLIDE 34

Representations

Single Orbits

X ∼ = G ⧸ Gx

Any single orbit G-set X is isomorphic to G ⧸ Gx for any x ∈ X.

Iso

f : X → G ⧸ Gx f(π · x) = π · Gx Well defjned Bijective

34 / 43

slide-35
SLIDE 35

Representations

Single Orbits

X ∼ = G ⧸ Gx

Any single orbit G-set X is isomorphic to G ⧸ Gx for any x ∈ X. Every G ⧸ H single orbit G-set Every G-set equivalent to a G ⧸ H Every G-set partition of its orbits. Win?

34 / 43

slide-36
SLIDE 36

Representations

Single Orbits

X ∼ = G ⧸ Gx

Any single orbit G-set X is isomorphic to G ⧸ Gx for any x ∈ X. Every G ⧸ H single orbit G-set Every G-set equivalent to a G ⧸ H Every G-set partition of its orbits. Win? Nope, there are too many of them!

34 / 43

slide-37
SLIDE 37

Representations

Single Orbits

What are we going to do?

35 / 43

slide-38
SLIDE 38

Representations

Support

Idea: Restrict to nominal G-sets:

Stabilizer again

GC = {π ∈ G | π · c = c ∀c ∈ C}

Open Subgroup

H ≤ G open

def

⇔ GC ≤ H for fjnite C ∈ D

Support

H ≤ G open with GC ≤ H ⇒ C supports H

36 / 43

slide-39
SLIDE 39

Representations

Support

(1-orbit) Nominal Sets ⇔ Open Subgroups

37 / 43

slide-40
SLIDE 40

Representations

Finite Subgroups

Problem: Open subgroups are unwieldy Solution: Assume (D, G) admits least support and is fungible (🍅)

Extension

extG(S) = {π ∈ G | π|C ∈ S} ≤ G for S ≤ G|C C supports extG(S) ⇒ extG(S) is open subgroup For open subgroup H ≤ G with support C: H = extG(H|C)

38 / 43

slide-41
SLIDE 41

Representations

Support

(1-orbit) Nominal Sets ⇔ (C, S) where S ≤ Sym(C)

39 / 43

slide-42
SLIDE 42

Total Order!

40 / 43

slide-43
SLIDE 43

Total Order

Fun Facts

Reminder: (Q, Mob(Q))

Finite Monotone Permutations

The only monotone permutation on a fjnite set is Id

Homogeneity

For fjnite C ⊆ Q, D ⊆ Q: |C| = |D| ⇒ ∃π. π · C = D

41 / 43

slide-44
SLIDE 44

Total Order

Representation

Representation 1

1-orbit nominal set X with x ∈ X supported by C: X ∼ = P|C|(Q)

Representation 2

1-orbit nominal set X with x ∈ X supported by C: X fully described by |C|

42 / 43

slide-45
SLIDE 45

Bibliography

Mikołaj Bojańczyk, Bartek Klin, and Sławomir Lasota. “Automata theory in nominal sets”. In: Logical Methods in Computer Science [electronic only] 10 (Feb. 2014). doi: 10.2168/LMCS-10(3:4)2014. Andrew M. Pitts. Nominal Sets: Names and Symmetry in Computer Science. en. Cambridge: Cambridge University Press, 2013. isbn: 978-1-139-08467-3. doi: 10.1017/CBO9781139084673. David Venhoek, Joshua Moerman, and Jurriaan Rot. “Fast Computations on Ordered Nominal Sets”. en. In: arXiv:1902.08414 [cs] (Feb. 2019). arXiv: 1902.08414.

43 / 43