-
Notifications
You must be signed in to change notification settings - Fork 6
/
_101.json
5637 lines (5633 loc) · 377 KB
/
_101.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
[
{
"tag": "Talk",
"date": "2024-12-13T13:00:00Z",
"speaker": "Neil Ghani",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Scientific anarchy",
"abstract": "TBD",
"location": "LT412 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-12-06T13:00:00Z",
"speaker": "Clemens Kupke",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Parity graphs",
"abstract": "TBD",
"location": "LT210 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-11-29T13:00:00Z",
"speaker": "Fredrik Nordvall Forsberg",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Theory of datatypes (containers/IR/QIITs)",
"abstract": "TBD",
"location": "LT210 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-11-22T13:00:00Z",
"speaker": "Danielle Marshall",
"speakerurl": "",
"institute": "University of Glasgow",
"insturl": "",
"title": "TBC",
"abstract": "TBC",
"location": "LT412 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-11-15T13:00:00Z",
"speaker": "Jade Master",
"speakerurl": "https://sites.google.com/view/jadeedenstarmaster",
"institute": "GLAIVE",
"insturl": "",
"title": "Representation Matters (Taking Categories Seriously)",
"abstract": "When we endeavor to build software based on category theory, we often have two categorically equivalent structures that represent the same underlying data and the correct choice of structure subtly depends on what you would like to do. The first generation of categorical programming languages heavily used the monad to represent algebraic effects. However, what if we made a different choice? Categorically equivalent to Monads are Lawvere theories, whose presentation as categories allows for many useful constructions which are more awkward in the Monad representation. In this talk, I will imagine what a system for algebraic effects based on Lawvere theories might look like. This talk will include a lightning introduction to Lawvere theories as well as a tour through an idris2 implementation of these ideas which still contains too many holes to float.",
"location": "LT310 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-11-08T13:00:00Z",
"speaker": "Bob Atkey",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "How to Make Good Choices",
"abstract": "What to do? One way to find out is to explore all the consequences of our choices and pick the best one. Or we could assume we have a magic device that tells us what the outcome of our choice will be, and to pick the best one straight off. In terms of programming, the former can be modelled using a monad for non-deterministic choices and the latter using the Selection monad of Escardo and Oliva. I'll relate these two monads via a logical relation, showing that if we are careful to respect abstraction boundaries, the two are equivalent for closed programs. I'll then extend this correspondence to account for different kinds of choice-making program and see how we can reconstruct concepts like Nash equilibrium. This talk may involve some live coding in Agda.",
"location": "LT210 and Online",
"material": [
{
"tag": "Link",
"address": "https://youtu.be/8ueFihu8Ja8",
"linkDescription": "Video"
},
{
"tag": "Link",
"address": "https://gist.github.com/bobatkey/b9ba09a9934bed48ae3551493173f952",
"linkDescription": "Agda code"
}
]
},
{
"tag": "Talk",
"date": "2024-11-01T13:00:00Z",
"speaker": "Guillaume Allais",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Partial evaluation",
"abstract": "Partial evaluation shows up all across PL in compilation (optimization), meta-theory (normalization), and code-generation (staging). I will give a gentle introduction to partial evaluation using semantic methods, showing how we can strategically build different models to decide different equational theories. This will be an Agda-mediated live coding show.",
"location": "LT309 and Online",
"material": [
{
"tag": "Link",
"address": "https://youtu.be/O-bHGWL7PNY",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-10-28T14:00:00Z",
"speaker": "Sean Watters",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "The Madness of the Modal μ-Calculus",
"abstract": "In this talk, I'll give you the <q>what</q>, <q>why</q>, and <q>how</q> of the μ-calculus - what it is, why I find it interesting (and hopefully why you should too!), and how to tame it in Agda. </p>I'll start by introducing and motivating the field of model checking, before quickly diverting to the modal μ-calulus, a fixpoint modal logic of foundational importance in that field. I'll talk about its semantics first, because that's only sensible, then the rest of the talk will be devoted to the weird and wonderful (but mostly weird) syntactic issues that arise from this formalism. In particular, I'll focus on an important syntactic construction called <q>the closure</q> of a μ-calculus formula, which is not stable under alpha-equivalence, and whose inductive structure is somewhat non-obvious. </p>In the second half, we'll code up an implementation of the μ-calculus in Agda, which will also serve as an introduction to well-scoped De Bruijn syntax. I'll work towards defining parallel substitution and weakening, and finish with the definition of the closure, and a (very) brief sketch of its correctness proof. The data type of thinnings between natural numbers will feature.</p>If there's time (which there probably won't be), I'll discuss an extension of well-scoped De Bruijn syntax that I've been calling <q>sublimely-scoped</q> syntax, which is still very WIP.",
"location": "LT310 and Online",
"material": [
{
"tag": "Link",
"address": "https://youtu.be/opJpkKgP288",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-10-18T13:00:00Z",
"speaker": "Clovis Eberhart",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "A Compositional Approach to Verification Models",
"abstract": "We will present a compositional approach to graph-like verification models (e.g., parity games, Markov decision processes, or Petri nets) based on <q>open</q> structures. Such open structures are graphs with potentially dangling edges called <q>open ends</q>, and which form interfaces along which open structures can be composed. We thus define a syntactic category of interfaces and open structures between them. We then define a semantic category representing relevant information about the structure (e.g., a category of probabilistic rewards). Finding an interpretation functor from the syntactic category to the semantic one shows that these structures' semantics can be computed compositionally. (This is joint work with Kazuki Watanabe, Kazuyuki Asada, Ichiro Hasuo, and Serge Lechenne.)",
"location": "LT714 and Online",
"material": [
{
"tag": "Link",
"address": "https://youtu.be/FRBpabpuBGE",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-10-11T13:00:00Z",
"speaker": "Jan de Muijnck-Huges",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Bidirectional Typing & Session Types, A Beautiful Friendship?",
"abstract": "Session Types are a neat typing discipline to reason both statically and dynamically about program interaction. An interesting question is how best we should check communicating programs against a given global type.</p>Bidirectional typing is an important technique for programming language design and implementation, enabling us to transform the theory of how we should check the type of a term and incorporate the practice of inferring the term's type.</p>This talk serves as a gentle introduction to bidirectional type system design and session types, and how combining the two can help make type checking session typed programs that little bit easier.",
"location": "LT714 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-10-04T13:00:00Z",
"speaker": "André Videla",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Cooking with Proofs",
"abstract": "The Curry-Howard correspondence says that types are propositions and programs are proofs. But what proof is Super Mario World on the SNES? In this introductory presentation we'll explore how the Curry-Howard correspondence manifests in different programming environments and how to employ it for software development.",
"location": "LT210 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-09-27T13:00:00Z",
"speaker": "Conor McBride",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Effing W",
"abstract": "I shall revisit the Hindley-Milner type system for the traditional Core ML (old sense) language of variables, application, monomorphic abstraction and polymorphic definition, to give a new twist on its implementation. In particular, I shall consider the role that the context plays in the type inference process, and then make it disappear, replacing context-as-data-structure with context-as-control-structure, demonstrating the power of effects and handlers. The extra ingredient which gives this new recipe its spice is to index with respect to a suitably compositional notion of \"progress\". I shall make that disappear, too!",
"location": "LT210 and Online",
"material": []
},
{
"tag": "SpecialEvent",
"date": "2024-09-20T13:00:00Z",
"endDate": "2024-09-20T14:00:00Z",
"title": "MSP101 Planning meeting",
"url": "",
"location": "LT1310 and Online",
"locationurl": "",
"description": ""
},
{
"tag": "Talk",
"date": "2024-04-17T13:00:00Z",
"speaker": "Dov M. Gabbay",
"speakerurl": "https://en.wikipedia.org/wiki/Dov_Gabbay",
"institute": "Augustus De Morgan Professor Emeritus of Logic, King's College London",
"insturl": "",
"title": "Intro to argumentation",
"abstract": "This is a blackboard talk introducing the audience to argumentation.",
"location": "LT11, boardroom",
"material": []
},
{
"tag": "Talk",
"date": "2024-02-13T12:00:00Z",
"speaker": "Nobuko Yoshida",
"speakerurl": "https://mrg.cs.ox.ac.uk/people/nobuko-yoshida/",
"institute": "Strachey Chair at University of Oxford",
"insturl": "",
"title": "Session types, Linear Logic and Expressiveness",
"abstract": "I will first talk about the origin of session types and its relationship with expressiveness.\n\nThe first technical part of this talk will present an expressiveness result between Linear Logic-based Session Types and System F. The second part gives a summary of recent results on session types, highlighting the expressiveness correspondence between various session-based process calculi.",
"location": "LT412",
"material": []
},
{
"tag": "SpecialEvent",
"date": "2024-05-03T15:00:00Z",
"endDate": "2024-05-03T16:00:00Z",
"title": "Academic Promotion Information Meeting",
"url": "",
"location": "LT209 (TBC)",
"locationurl": "",
"description": ""
},
{
"tag": "SpecialEvent",
"date": "2024-03-29T15:00:00Z",
"endDate": "2024-03-29T16:00:00Z",
"title": "No talk this week (Easter Bank Holiday)",
"url": "",
"location": "",
"locationurl": "",
"description": ""
},
{
"tag": "Talk",
"date": "2024-03-15T15:00:00Z",
"speaker": "Fredrik Nordvall Forsberg",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Can ordinal exponentiation be defined constructively in homotopy type theory?",
"abstract": "A cornerstone of the classical theory of ordinals is its rich theory of arithmetic, extending the arithmetic of natural numbers. While addition and multiplication are easily seen to be realized by disjoint union and Cartesian product of wellorders respectively, exponentiation is more mysterious. Using classical logic, it can be defined using a case distinction on the exponent, but constructively, this can not serve as a definitional principle, but rather as a specification of what exponentiation should satisfy. Sierpiński [1958] gives an explicit construction for a base with a least element as the set of functions with finite support. This construction again relies on classical logic in several places, but working in homotopy type theory, we have managed to to refine the idea in a more intensional manner to define a^b for ordinals a of the form a = 1 + a' for some ordinal a'. In a sense, this is the best we can hope for: we can prove that an operation a^b satisfying the specification of ordinal exponentiation for all inputs a and b is definable if and only if the law of excluded middle holds.\n\nThis is joint work with Tom de Jong, Nicolai Kraus, and Chuangjie Xu.",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://github.com/fredrikNordvallForsberg/TypeTopology/blob/exponentiation/source/Ordinals/Exponentiation.lagda",
"linkDescription": "Agda formalisation (messy, WIP)"
},
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=o9llIj0nlz4",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-05-24T15:00:00Z",
"speaker": "Jan de Muijnck-Hughes",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Propagating Rose Trees with Dependent Types to Grow Shaped ASTs Generically",
"abstract": "Dependently typed languages support the construction of intrinsically-typed (well-scoped) terms, ensuring that our core language representations are correct-by-construction. The datatypes we use to represent Abstract Syntax Trees (AST) are not well-typed nor well-scoped, nor should they be. Nonetheless, ASTs are often represented as a collection of bespoke datatypes that capture what it means for an AST to be ‘well-structured’. Such artisan crafting of our ASTs comes at the price of generality. We must define the same traversals and operations time and time again over each AST.
<br/>
Taking inspiration from intrinsically-typed datatypes and compact encoding of primitives, we show how rose trees can have their shape dictated by a description contained within a dependent type. We can thus, describe (type) the structure of our ASTs similar to how we describe the concrete syntax using eBNF and embed the description inside a pre-existing datatype. Through this novel combination, we now have a single generic datatype for ASTs and single operations that act on them.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "SpecialEvent",
"date": "2024-05-31T15:00:00Z",
"endDate": "2024-03-29T16:00:00Z",
"title": "No talk this week",
"url": "",
"location": "",
"locationurl": "",
"description": ""
},
{
"tag": "Talk",
"date": "2024-06-07T15:00:00Z",
"speaker": "Guillaume Allais",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "From Separation Logic to Dependent Parallel Skeletons",
"abstract": "I will give a high level motivation for separation logic and then show how we can (WIP) use these ideas in Quantitative Type Theory as implemented in Idris 2 to give a correct-by-construction treatment of effectful parallel programming over buffers.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-05-17T15:00:00Z",
"speaker": "Ross Horne",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "What is deep inference?",
"abstract": "Deep inference is a branch of proof theory where inference rules can be applied in any context, much like in categorical logic. What I find fun in this area is that it has been used to define new logics for which there exists no sequent calculus nor even a semantics (yet). I'll introduce some simple deep inference systems first. Next, I'll point to recent work where we generalise logic beyond formulas to graphs.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-05-10T15:00:00Z",
"speaker": "Clemens Kupke",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "A Coalgebraic Interpretation of the Lee/Yannakakis Minimisation Algorithm",
"abstract": "Minimisation of transition systems wrt bisimulation is important for the verification of properties of such systems. In my talk I will discuss a minimisation algorithm by Lee and Yannakakis, that intertwines minimisation with reachability checking. The algorithm caught our eye due to clear similarities with our own variant of Angluin's algorithm that allows to learn a minimal, reachable quotient of a given transition system. In the talk I aim to compare Lee/Yannakakis and Angluin and will sketch a possible coalgebraic generalisation of the Lee/Yannakakis algorithm. This is based on ongoing joint work with Simone Barlocco.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-04-26T15:00:00Z",
"speaker": "Zanzi",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Free Relative Monads and Kan Algebras for Type and Scope Safe DSLs",
"abstract": "What are relative monads and why are they interesting? Functional programmers are familiar with using fixpoints of endofunctors and free monads to model datatype-generic evaluators. In this applied talk we will see how free relative monads allow us to extend these techniques to the realm of well-scoped and well-typed languages with binders. A crucial role will be played by kan extensions: in a slogan, \"Left Kan Extensions for Syntax, Right Kan Extensions for Semantics\".",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=1UEN7AY0Xeg",
"linkDescription": "Video"
} ]
},
{
"tag": "CancelledTalk",
"date": "2024-04-19T14:00:00Z",
"speaker": "Ezra Schoen",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Modal Fixpoint Logics, Categorically",
"abstract": "Fixpoint logics are fun and exciting - they're second-order, which makes them quite expressive, but they still enjoy neat algorithmic properties. They're also difficult to work with; proofs are often intricate beasts, with swarms of technical lemmas and taylor-made tools. While this can be rewarding to work your way through, it's not necessarily efficient, and commonalities and similarities are often not exploited. <br/> This makes modal fixpoint logics an excellent target for us category theorists - finding and formalizing commonalities is our bread and butter. There's an exceedingly elegant framework for defining and working with one-step modal logics, based on dual adjunctions. In this talk, I'll sketch how (certain) modal fixpoint logics may be treated in the same way. I'll assume familiarity with category theory and basic (Kripke) modal logic, but not much else. <br/> This is joint work with Clemens Kupke, Jurriaan Rot and Ruben Turkenburg.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-04-12T15:00:00Z",
"speaker": "Dylan Braithwaite",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Foundational Structures for Communicating Processes",
"abstract": "In 2009 Cockett and Pastro introduced a model for a typed process calculus in terms of a ‘linear actegory’. They note that the sequent rules of their calculus can be naturally viewed as living in a ‘poly-actegory’, a polycategory whose terms are additionally indexed by a list of objects of a multicategory, of ‘message types’. Although poly-actegories are mainly used as a tool to study the soundness of their language, they could arguably be taken as the foundational concept. <br/> Indeed recently Shulman has proposed a nearly identical structure under the name ‘LNL-polycategories’. Shulman shows that by asking that different collections of universal properties be present, LNL-polycategories may be used as a model for the LNL calculus, CBPV, and other models of effectful calculi. Inspired by this I will survey the universal properties required for implementing the basic communication primitives in a process calculus. With this framework, we can compare process models with the structures present in linear logic models, or effectful models, offering an additional perspective into the existing connections between the pi-calculus and linear logic or algebraic effects.
",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=I50O7cCCnFk",
"linkDescription": "Video"
} ]
},
{
"tag": "Talk",
"date": "2024-04-05T15:00:00Z",
"speaker": "Jade Master",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "I Think Indexed Enriched Categories are Nice.",
"abstract": "First proposed by Lawvere in 1973, indexed enriched categories are a very complicated mathematical structure studied in only the most privileged ivory towers. In this talk I intend to bring them down to earth by exploring their viability as a data structure. I will cheat by only considering enrichments where the axioms are satisfied trivially. I will explain how these 'trivial' enriched categories are nice data structures for holding solutions to algebraic path problems. Then I will explain how making them indexed allows us to work with distributed, concurrent, and compositional algebraic path problems. This talk will be in line with the research programme I started to develop before I quit and left for industry. Namely, that indexed categories and Grothendieck constructions may be used to develop a general theory of compositional computation. This talk will feature Idris2 code and categorical terminology side-by-side so that those familiar with either language will be able to follow along.",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=coOArj1VyTw",
"linkDescription": "Video"
} ]
},
{
"tag": "Talk",
"date": "2024-03-22T15:00:00Z",
"speaker": "Matteo Capucci",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Softmax is Argmax, and the Logic of the Reals",
"abstract": "I will report some work in progress on the semiotics of softmax. This is an operator used in machine learning (but familiar to physicists way before that) to normalize a log-distribution, turning a vector of (thus, a function valued in) logits (i.e. additive reals) into a probability distribution. Its name is due to the fact it acts as a 'probabilistic argmax', since the modes of a softmax distribution reflects the minima (by an accident of duality) of the function. I will show an attempt to make this statement precise, by exhibiting the semantics of a 'very linear logic' on the *-autonomous quantale of extended multiplicative reals. In this logic, additive connectives are also linear, but are still in the same algebraic relation with the multiplicative ones. I will show how to define quantifiers, and thus softmax. If time permits, I'll show a construction of an enriched equipment of relations in which softmax should be characterizable as a Kan lift, in the same way argmax is characterized as a Kan lift in relations.",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://msp.cis.strath.ac.uk/101/slides/2024-03-22_capucci.pdf",
"linkDescription": "Slides"
},
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=y1rpNTHOsf4",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-03-08T15:00:00Z",
"speaker": "Paulo Torrens",
"speakerurl": "",
"institute": "University of Kent",
"insturl": "",
"title": "TBD",
"abstract": "The continuation-passing style (CPS) translation employed within compilers gives rise to a class of target calculi where direct style functions don't exist anymore. While those may be studied using the lambda calculus, this might not be desired if the language should not be closed under beta-reduction, such as in the intermediate representation (IR) of Appel's compiler. The purpose of this talk is to introduce ongoing work on the metatheory of Thielecke's CPS-calculus, a small theory of continuations based on production IRs, how it relates to actual implementations, and how this allows us to have a strong theoretical background on the study of name-passing IRs in a similar way that the lambda calculus works as a theoretical foundation for functional programming.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-03-01T15:00:00Z",
"speaker": "Wen Kokke",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Type-Logical Grammar, Controlled Substructure, and Display Calculus",
"abstract": "",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-02-23T15:00:00Z",
"speaker": "Andre Videla",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Containers for compiler architecture",
"abstract": "Compiler architecture sucks. It's been left behind by years of software engineering development that have been very successful in developing software past the command-line age. Today, applications are meant to be responsive, accessible from a web browser, enable collaboration, be multi-platform, include some generative AI. Some of those ideas are good, some are bad, but most compilers do not include any of them. In this presentation, I aim to showcase how we can revisit the classical \"compiler as a function\" architecture using containers to bring the idea of compiler architecture to the XXI century.",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=BnzAxT-O0Y8",
"linkDescription": "Video"
},
{
"tag": "PDF",
"slideName": "2024-02-23_videla.pdf"
}
]
},
{
"tag": "Talk",
"date": "2024-02-16T15:00:00Z",
"speaker": "Jules Hedges",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Making lenses less pointless",
"abstract": "This talk contains two ideas. The first is a small trick for programming with lenses in a not-pointfree way, without using macros or other brittle hacks. The key is something I call a \"dialectic\", which is a value that carries around a delimited continuation with it. The second idea is realising that the central construction of Matteo's \"Diegetic Open Games\" paper amounts to a monad on the category of lenses that arises as the Kleisli dual of the linear ! comonad in a Dialectica category. By putting these two ideas together we get a shallow DSL for open games, differentiable programming, and other applications of categorical cybernetics. This will be a live coding talk using Haskell, although I think the same ideas should work in any language with first class functions.",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=_572EOJPP6M",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-02-09T15:00:00Z",
"speaker": "Bob Atkey",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Stable domain theory, Program slicing, and Automatic Differentiation",
"abstract": "I'll talk about a connection I think I've discovered between stable domain theory and program slicing by Galois Connections. Stable domain theory considers a refinement of continuous functions between domains that captures the intuitive idea that a \"nice\" computable functions that produce values must do so by only looking at part of their input, and that part must be uniquely determined. The same idea turns up in Perera et al.'s formulation of program slicing as Galois connections. I'll try to connect the two via ideas from Automatic Differentiation.",
"location": "LT209 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2024-02-02T11:00:00Z",
"speaker": "Conor McBride",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Presheaves on Purpose",
"abstract": "Dependently typed programming languages allow us to define indexed families of datatypes, e.g. <code>Term (n : Nat) : Set</code> as the type of lambda-terms with <code>n</code> variables free. As declared, <code>Term</code> is functorial only on the discrete structure of <code>Nat</code>, which is to say that it respects equality and nobody will faint with amazement. But by an outrageous coincidence (which I learned from Altenkirch, Hofmann and Streicher), such terms can be acted on by <em>thinnings</em> from <code>n</code> to some larger scope <code>m</code>, allowing us to carry terms under binders. That is, we can demonstrate by honest toil that <code>Term</code> is a functor from <code>Thin</code> to <code>Set</code>. I dislike honest toil, and will show you how to design it away in this and similar situations. To that end, I present a universe construction for descriptions of datatypes indexed over the objects of some category <code>C</code> which, by construction, extend to a functors from <code>C</code> to <code>Set</code>, a.k.a. presheaves on <code>Cop</code>.",
"location": "LT401 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=3gef0_NFz8Q",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2024-01-26T15:00:00Z",
"speaker": "Malin Altenmüller",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Plane Graphs, (Co-)Operads, and Pattern Matching",
"abstract": "I will present work on open surface-embedded graphs as representations of string diagrams. The key feature of these graphs' definition are distinguished boundary vertices which represent their (outer and inner) boundaries. These special vertices make it possible to define surface-embeddings of graphs using a rotation system which specifies an ordering of incident edges at each vertex. We can then also express graph rewrite rules by their action on boundary vertices. Additionally, boundary vertices are a convenient structure to define planar graphs as operads, similar to Spivak's Operad of Wiring Diagrams [1]. I will explain this construction, as well as a dual \"co-operad\" version of it, and finally the operad-cooperad interaction which yields a notion of graph pattern matching.\n\n[1] https://arxiv.org/abs/1305.0297",
"location": "LT209 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=XG65L3PVexc",
"linkDescription": "Video"
}
]
},
{
"tag": "SpecialEvent",
"date": "2023-12-04T10:30:00Z",
"endDate": "2023-12-04T17:00:00Z",
"title": "CATNIP",
"url": "https://sites.google.com/view/catniporg/home?authuser=0",
"location": "University of Strathclyde (MC301)",
"locationurl": "",
"description": "The second Categories Network Project (CATNIP) meeting."
},
{
"tag": "Talk",
"date": "2023-11-23T15:00:00Z",
"speaker": "Danel Ahman",
"speakerurl": "https://danel.ahman.ee/",
"institute": "University of Ljubljana",
"insturl": "https://www.fmf.uni-lj.si/en/",
"title": "What do bidirected containers (co-)interpret into?",
"abstract": "Directed containers are a neat specialisation of containers that fully faithfully interpret into comonad structures on the polynomial functor interpretation of the underlying containers. In terms of shapes and positions, a directed container requires the family of positions to form a certain kind of dependently typed monoid acting on the shapes. In terms of data types, directed containers capture structures where every position in a shape determines a subshape rooted at that position, e.g., positions in a non-empty list determine sublists rooted at those positions.\n\nIn this talk I will discuss bidirected containers and what they interpret into. Bidirected containers specialise directed containers further by asking the positions to form a certain kind of dependently typed group acting on the positions. In terms of data types, this corresponds to every sub data structure having a position in it that takes one back to the parent data structure, i.e., data types that behave like zippers. I will also discuss what we need to seem to ask from comonads to get a similarly tight correspondence as we have for directed containers. I will end by wondering whether an analogous story also applies to the cointerpretation of directed containers as update monads.",
"location": "LT210 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-09-29T14:00:00Z",
"speaker": "Conor McBride",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "An Introduction to Bricks",
"abstract": "",
"location": "LT711 and Online",
"material": []
},
{
"tag": "CancelledTalk",
"date": "2023-12-15T14:00:00Z",
"speaker": "Neil Ghani",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "TBD",
"abstract": "",
"location": "LT210 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-12-07T11:00:00Z",
"speaker": "Georgi Nakov",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "LabMate --- your faithful and type-safe Matlab assistant",
"abstract": "Can you write type-safe Matlab code? And what can we do to help you write type-safe Matlab?\n\nThis talk is a report on our progress on LabMate --- an interactive system designed to improve on current best practices of writing Matlab code. Our key proposition can be eloquently described as \"add types, all the types\".\n\nI will give a brief tour of the various features in LabMate and the rationale behind including them. We will also recall the basics of bidirectional type checking, what to do to incorporate dimension and unit checking, and how to represent matrices with high degree of generality in our type system. Some of the non-trivial challenges with Matlab's permissive syntax and elaborating operator overloading will become apparent in the process.\n\nThis is joint work with Fred and Conor.",
"location": "LT210 and Online",
"material": []
},
{
"tag": "BasicTalk",
"date": "2023-12-01T14:00:00Z",
"speaker": "Fredrik Nordvall Forsberg",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Non-standard analysis",
"abstract": "I will give a basic 101-style introduction to the first-order logic concept of non-standard models. Intuitively, a non-standard model of say Peano Arithmetic PA is a model which contains infinitely large numbers. Yet, by virtue of being a model of PA, such a model still validates all the axioms of PA, including the induction axiom schema! It is an interesting and beautiful feature/bug of first-order classical logic that such models exist.",
"location": "LT711 and Online",
"material": []
},
{
"tag": "CancelledTalk",
"date": "2023-11-24T14:00:00Z",
"speaker": "Jade Master",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "TBD",
"abstract": "",
"location": "LT210 and Online",
"material": []
},
{
"tag": "SpecialEvent",
"date": "2023-11-22T12:00:00Z",
"endDate": "2023-11-22T17:00:00Z",
"title": "SPLS",
"url": "https://scottish-pl-institute.github.io/spls/meetings/2023/november/",
"location": "University of Strathclyde / Online",
"locationurl": "",
"description": ""
},
{
"tag": "Talk",
"date": "2023-11-17T14:00:00Z",
"speaker": "Riu Rodríguez Sakamoto",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Categorical cybernetics for Markov decision processes",
"abstract": "I will introduce two ingredients to MSPs 'categorical cybernetics':\n- \"open game\"-like categories for backward-filtering problems\n- semiring valuations to formalize softmax as a *preference* relation (generalizing selection relations)\n\nThis will allow us to fit Markov decission processes and certain estimation problems to the existing framework, clearing our path towards connecting control and estimation problems.",
"location": "LT210 and Online",
"material": []
},
{
"tag": "CancelledTalk",
"date": "2023-11-10T14:00:00Z",
"speaker": "Georgi Nakov",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "TBD",
"abstract": "",
"location": "MC303 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-11-03T14:00:00Z",
"speaker": "Joe Collins",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Hopf-Frobenius Algebras",
"abstract": "Hopf algebras and Frobenius algebras are two fairly common algebraic structures. They even look pretty similar if you squint your eyes - both consist of a monoid/ comonoid pair, and some algebraic rule that tells you how they interact. There are a few instances where a single object in a category has the properties of both a Hopf algebra and a Frobenius algebra, called a Hopf-Frobenius algebra. In particular, ZX calculus, a way of modelling quantum circuits using symmetric monoidal categories, has this property. Why? And where else does this occur?\n\nIn this talk, I will be talking about what a Hopf-Frobenius algebra is and where it comes from.",
"location": "LT210 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-10-27T14:00:00Z",
"speaker": "Bruno Gavranović",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Category Theory ∩ Deep Learning : Where are we, and where can we go?",
"abstract": "Four years ago I embarked on my PhD with the goal of exploring the landscape of category theory, and its application to artificial neural networks. Specifically, I aimed to understand at which level of generality can we express components of artificial neural networks, and still meaningfully capture learning.\n\nIn this talk I will give a progress report on this goal, and outline future directions for improvement.",
"location": "LT210 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=I1DlBnK1tks",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-10-20T14:00:00Z",
"speaker": "Ezra Schoen",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "The double category of adjunctions",
"abstract": "There's a particular double category which I've noticed floating around for a while. The purpose of this talk is to explicitly describe this double category, play around in it and see if we can leverage it to get some `theorems for free'. I'll only be assuming prior familiarity with 1-categories, so it should be of general interest. In fact, part of the purpose behind this talk is demonstrating that even for staunch 1-category theorists, having some higher categories `in the back pocket' may help in getting a clear picture of what's `really going on'.",
"location": "LT210 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=4XG8MgQDbtA",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-10-13T14:00:00Z",
"speaker": "Sean Watters",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "(Reflexive) Partial Monoids 101",
"abstract": "Partial monoids came up in my work recently, and I found them quite interesting. The main goal of this talk is to introduce the notion into our local sphere of consciousness. After going over the basics I'll focus mostly on reflexive partial monoids, the suprisingly tricky problem of defining exponentiation for them, and the free reflexive partial monoid. I'll finish by outlining some remaining questions that I'm still wondering about.",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=p44LyR-iDtw",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-10-06T14:00:00Z",
"speaker": "Andre Videla",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Writing interactive programs using containers",
"abstract": "Containers and their morphisms provide a bidirectional structure that matches a lot of programs that are interactive in nature (databases, servers, compilers). In this presentation I will show how to build such programs using containers, container morphisms and their algebra.",
"location": "Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=ft8LYjB22fc",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-09-22T14:00:00Z",
"speaker": "Guillaume Allais",
"speakerurl": "",
"institute": "MSP",
"insturl": "",
"title": "Staging by Evaluation",
"abstract": "I will present an Agda implementation of a simply typed version of András Kovács' Staged compilation with two-level type theory.
Starting from an intrinsically typed language mixing static and dynamic parts using quotes and splices, we perform a model construction à la normalisation by evaluation and obtain a staging by evaluation algorithm.",
"location": "LT210 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=6meBs-M5PQc",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-07-05T11:00:00Z",
"speaker": "Anton Chernev",
"speakerurl": "",
"institute": "University of Groningen",
"insturl": "",
"title": "A dual adjunction between Ω-automata and Wilke algebras",
"abstract": "The notion of ω-regular language captures the idea of a regular language that consists of infinite words. The most standard type of automata for ω-regular languages are called Büchi automata. Ω-automata are another type of automata for ω-regular languages that, instead of infinite words, read pairs of finite words, called lassos, that represent ultimately periodic words.
We study the categorical relationship between Ω-automata and Wilke algebras – the latter are algebraic structures recognising ω-regular languages. We present a chain of adjunctions starting from the category of Ω-automata without initial states and ending with the dual of the category of quotients of the free Wilke algebra.
This is joint work with Helle Hvid Hansen (University of Groningen) and Clemens Kupke (University of Strathclyde).",
"location": "GH 513 and Online",
"material": [
{
"tag": "Link",
"address": "https://msp.cis.strath.ac.uk/101/slides/2023-07-05_anton.pdf",
"linkDescription": "Slides"
}
]
},
{
"tag": "Talk",
"date": "2023-06-27T16:00:00Z",
"speaker": "Meven Lennon-Bertrand",
"institute": "University of Cambridge",
"speakerurl": "https://www.meven.ac/",
"insturl": "https://www.cl.cam.ac.uk/research/clash/",
"title": "A Shiny Hammer and Many Nails to Hit – Bidirectional typing is not only an implementation technique",
"abstract": "In 2000, Pierce and Turner introduced a new technique to perform type inference for ML-like languages, whose main idea was to carefully understand the local flow of information in the algorithm. This technique, which came to be referred to as bidirectional typing, did not come out of a void: similar ideas had appeared independently in many other contexts. In particular, bidirectional typing has been a part of the folklore of dependently typed languages implementers since the dawn of time.\n\n But even in that context where it has a long history, bidirectional typing was for a long time mostly confined to implementations. Yet, its type-theoretic structure turns out to be a very versatile and powerful tool when studying (dependent) type systems and their meta-theory.\n\n In this talk, I will try and give some of my understanding of bidirectional typing, how it is rooted in type-checker implementations but is more than just this, and how it can be used to make many facets of the infamously painful meta-theory of dependent type systems a bit less painful.",
"location": "GH 513 and Online",
"material": [
{
"tag": "Link",
"address": "https://msp.cis.strath.ac.uk/101/slides/2023-06-27_meven.pdf",
"linkDescription": "Slides"
}
]
},
{
"tag": "Talk",
"date": "2023-06-30T15:00:00Z",
"speaker": "Joey Eremondi",
"institute": "University of Edinburgh",
"speakerurl": "https://eremondi.com/",
"insturl": "https://web.inf.ed.ac.uk/lfcs",
"title": "On The Design of a Gradual Dependently Typed Language for Programming",
"abstract": "I describe a design for gradual dependent types, a system by which dependently typed programs can be run when missing parts of types, proofs, or programs. This serves a dual purpose. First, it reduces the barrier to entry for dependent types, making it easier to migrate code to use dependently typed languages, and allowing indexed types to be safely used even when type or proof information is missing. Second, it gives dynamic semantics to the typed holes that are already found in modern languages, so programs can be safely run when holes are missing, providing the programmer with useful information of what terms should fill the holes. In the talk, I present a vision for what programming with gradual dependent types could look like, along with technical challenges that arise with it and solutions to some of these challenges.",
"location": "GH 513 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-06-16T15:00:00Z",
"speaker": "Jan de Muijnck-Hughes",
"institute": "MSP",
"speakerurl": "http://jfdm.github.io/",
"insturl": "",
"title": "Session Types & Imperative Languages & Observations, Oh My!",
"abstract": "Session Types are a neat typing discipline to reason both statically and dynamically about program behaviour. An interesting question is how best we can incorporate session types into our programming languages and reach the fabled Emerald City of Type-Driven Validation of Communicating Systems!\n\n Earlier this year, I gave a talk at PLUG that discussed the dependently-typed mechanics that pushed me along the yellow brick road to create Capable, a featherweight imperative language that supports Multi-Party Session-Types (MPSTs). Capable has been mechanised within Idris2 to ensure that including MPSTs is done honestly as the Good Witch Glinda would appreciate.\n\n In this talk I intend to step away from the keyboard and take a detour along a yellow-ish cobbled street to look at some of the theoretical observations that arise from mechanisation. Specifically, I will discuss the design decisions that the Wicked Dependent-Type Checker of the East has requested I do to ensure unification and execution, but more importantly the trade-offs that come with those decisions.\n\n This work is, slowly, getting ready for publication (we do in fact run our session-typed programs) and I am certain that I don't need to return that brain, yet....",
"location": "LT310 and Online",
"material": []
},
{
"tag": "CancelledTalk",
"date": "2023-06-19T15:00:00Z",
"speaker": "John Power",
"institute": "University of Bath",
"speakerurl": "",
"insturl": "",
"title": "A Category Theoretic Analysis of Binders",
"abstract": "In the late 1990's, Fiore, Plotkin and Turi proposed a category theoretic model for binders. Instead of having a set of terms, they proposed a presheaf of terms over F, the category of finite sets, which provided cartesian contexts. They used a substitution monoidal structure on the category [F,Set] and characterised the notion of term in this setting by combining the notion of monoid in the substitution monoidal structure with the usual free generation of terms. Their modelling of binder was derived from that of substitution. A little later, Tanaka, following their lead, modelled linear binders, replacing F by P, the category of finite sets and permutations. These are instances of an axiomatic situation, where one has a 2-monad S on Cat, with a pseudo-distributive law, subject to a caveat about size, of S over what, except for size, would be a pseudo-monad [-^op,Set]. Tanaka and I developed the axiomatics in a series of papers that I propose to explain. The same mathematics was also used by Martin Hyland and several other authors in modelling general notions of algebra.",
"location": "LT310 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-06-21T14:00:00Z",
"speaker": "John Power",
"institute": "University of Bath",
"speakerurl": "",
"insturl": "",
"title": "Computational Effects in Mathematical Perspective",
"abstract": "In the late 1980's, Eugenio Moggi introduced the idea of \"monads as notions of computation\", the latter more recently called computational effects, supported by several impressive examples. He used the definition of monad but did not make substantial use of mathematics that gives rise to monads. In category theory, monads systematically arise from universal algebra. But universal algebra can also be understood, from a category theoretic perspective, in terms of Lawvere theories, this fact shedding considerable light on computational effects, in particular the operations that give rise to effects. That observation has been fundamental to a deep, further development, giving rise to the notion of algebraic effect. I shall try to explain the conceptual line of thought that gives rise to algebraic effects, modelled by Lawvere theories and thence my monads. It was joint work primarily with Gordon Plotkin but also with others, notably Martin Hyland.",
"location": "MC319 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=7D5o-ZM_P90",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-05-12T15:00:00Z",
"speaker": "Ethel Morgan",
"institute": "MSP",
"speakerurl": "",
"insturl": "",
"title": "Just when I thought I was out, they pull me back in.",
"abstract": "Experiences from industrial academia & academic industry.",
"location": "LT711 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-05-05T15:00:00Z",
"speaker": "Johannes Marti",
"institute": "Oxford",
"speakerurl": "http://johannesmarti.com/",
"insturl": "https://www.cs.ox.ac.uk/",
"title": "Modal unification and graph homomorphisms",
"abstract": "The problem of unifiability in a modal logic L asks, whether for a given formula phi there exists a substitution such that applying the substitution to phi turns it into a theorem of L. For the many non-transitive modal logics, most notably the modal logic K, it is not known whether this problem is decidable. I present joint work with Sam van Gool, where we reformulate unifiability relative to some modal logics L as a problem about the existence of a graph homomorphism for some generalised notion of graph that depends on a coalgebra functor T.",
"location": "LT711 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-04-28T15:00:00Z",
"speaker": "Vikraman Choudhury",
"institute": "University of Glasgow",
"speakerurl": "https://vikraman.org/",
"insturl": "https://www.gla.ac.uk/schools/computing/research/researchsections/fata-section/",
"title": "Continuations and co-exponentials",
"abstract": "Growing up in Indiana, I learned about corn-mazes and continuations, but I found them very confusing, often getting lost and struggling to get back on track. Now that I’m living far away in Scotland, I find myself reminiscing about my midwestern roots.\n\n In this talk, I will present a different perspective on continuations: just as higher-order functions give you exponentials, higher-order continuations give you co-exponentials. On this motif, I will develop the theory of co-exponentials and some applications. I will show how to: (1) combine exponentials and co-exponentials in the same language without degeneracy, (2) give a computational interpretation for bi-intuitionistic logic, (3) recover classical control operators and the computational interpretation of classical logic using Faustian sums, (4) use co-exponential combinators to do speculative execution, backtracking, and encode effect handlers, (5) add co-exponentials to a first-order programming language, with a computational interpretation. I will develop these ideas both in syntax and semantics.\n\n The main idea occurred to me while studying linear logic and star-autonomous categories, from Mellies’ micrological study of negation. The rest of the work builds upon old ideas of Hofmann, Streicher, Reus on models of lambda-mu calculus, Moggi’s computational lambda calculus, Thielecke’s ⊗¬ categories, Freyd categories of Power, Thielecke, Führmann and others, and Hasegawa’s contextual calculus. This work is situated as part of a bigger research programme on trying to understand the foundations of quantum programming languages, starting from first-order reversibility, instead of linearity.",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=rsEJaLVVNIc",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-04-14T15:00:00Z",
"speaker": "Thorsten Altenkirch",
"institute": "University of Nottingham",
"speakerurl": "http://www.cs.nott.ac.uk/~txa/",
"insturl": "http://www.cs.nott.ac.uk/",
"title": "What are higher categories and groupoids?",
"abstract": "Categories are like drugs: once you get addicted to one, your dealer comes up with something stronger and you aquire a new addiction. This is the games with higher categories.\n\n I want to look at the definition of higher cats, actually w,1-cats in HoTT using semi-simplicial types and the directed replacement of simplicial types. Also I may discuss the globular approach (which works for higher groupoids but could also made to work for higher cats) I am wondering how these are related. This may help to address some open problems.",
"location": "LT711 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-03-14T15:00:00Z",
"speaker": "Nathaniel Virgo",
"institute": "Earth-Life Science Institute (Tokyo)",
"speakerurl": "",
"insturl": "https://www.elsi.jp/en/",
"title": "Systems that model their environments, and systems that plan.",
"abstract": " Consider a system interacting with its environment, perhaps in pursuit of some goal. We might want to ask whether the system has a model of its environment, especially in POMDP-like cases where the environment is partially observable and the system must make inferences about the environment's state in order to pursue its goal.\n\n But where does the model live in relation to the system? A simple answer is that the system's state parametrises a probability distribtion over environment states. This distribution isn't part of the system but is imposed upon it by an external observer. I will talk about how to model this observer-dependence via notion of 'interpretation' of a sytem, in which a system's internal states are interpreted as being 'about' a hidden environment state and as being updated using Bayes' theorem. A given system may have many interpretations, so that interpretations form a fibration over systems.\n\n A more interesting case is where a system uses a model not just to keep track of its environment but to reason about how to influence it. This is a lot harder to model, and I will talk about various pieces of work in progress towards understanding the relationships between systems, models and goals, with an emphasis on a category-theoretic perspective.",
"location": "LT310 and Online",
"material": [
{
"tag": "PDF",
"slideName": "2023-03-14_nathaniel.pdf"
}
]
},
{
"tag": "Talk",
"date": "2023-05-19T15:00:00Z",
"speaker": "Andre Videla",
"institute": "MSP",
"speakerurl": "",
"insturl": "",
"title": "How to be a real™ (C) programmer for beginner type theorists",
"abstract": "Feeling impostor syndrome from writing proof trees yet never executing any programs? Tired of being marginalized from online communities because you've never dereferenced raw memory? Finally, you can become a C-programmer neckbeard with this one crazy trick without leaving the comfort of your pen&paper. By extending QTT with pointer operations one can finally achieve their dream of submitting a patch to the linux kernel and have it be rejected for naming conventions. At least the program would be correct by construction since you can inherit all your inductive proofs inside your imperative program.",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=dwutzLQ4ClA",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-06-09T15:00:00Z",
"speaker": "Malin Altenmüller",
"institute": "MSP",
"speakerurl": "",
"insturl": "",
"title": "Control Flow as a Contour of Data Flow",
"abstract": "I will be talking about some ongoing work on a compositional graph data structure for encoding control flow information of a program. At the centre of this definition is the notion of contour for a given tree-like structure. The notion of contour category was introduced by Melliès and Zeilberger [1], who use it in the context of representing derivations in context-free grammars as functors. I will give an overview over their constructions, and present how we generalise the notion of contour, moving to a non-linear, non-deterministic version. We use these generalised contours to express control flow information of a program on top of its abstract syntax tree. I will discuss how normal flow as well as exceptional program behaviour is represented in this framework. This is joint work with Dan Ghica.\n\n [1] <a href='https://arxiv.org/abs/2212.09060'>https://arxiv.org/abs/2212.09060</a>",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=pnNy16sfnUk",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-05-26T15:00:00Z",
"speaker": "Bob Atkey",
"institute": "MSP",
"speakerurl": "http://bentnib.org/",
"insturl": "",
"title": "From Lenses to Composable Continuations, and what lies between",
"abstract": "Continuation-Passing Style (CPS) is a programming discipline that parametrises programs by \"the thing that happens next\" - the continuation. Programs in CPS gain superpowers by being able to directly manipulate the continuation and use it as many times as they want. In this talk, I'll try to convince you that lenses are a restricted form of CPS where the continuation must be used exactly once. In fact, lenses and CPS form a category with lenses as the initial object and CPS as the terminal object. But what lies between them?",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=YpklMn5yNA0",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-03-31T15:00:00Z",
"speaker": "Clemens Kupke",
"institute": "MSP",
"speakerurl": "http://personal.cis.strath.ac.uk/clemens.kupke/",
"insturl": "",
"title": "Towards a categorical representation of thin trees",
"abstract": "Deterministic Automata on infinite trees lack expressivity. The situation is different when restricting one’s attention to so-called thin trees where every regular language can be seen as the language of a so-called unambiguous automaton. In my talk I will explain our motivation for why we are interested in unambiguous tree automata and I will present work in progress that aims to understand thin trees more abstractly. This is based on ongoing joint work with Corina Cirstea, Jade Master and Alexandre Goy.",
"location": "LT711 and Online",
"material": []
},
{
"tag": "Talk",
"date": "2023-03-24T15:00:00Z",
"speaker": "Riu Rodríguez Sakamoto",
"institute": "",
"speakerurl": "",
"insturl": "",
"title": "From discounted value to discounted state",
"abstract": "The discounted value is a concept in Reinforcement Learning methods such as Value Iteration that allows to aggregate expected future rewards. It can be formalized as lens precomposition with a value function (which is a counit). We give some progress towards another class of RL methods that are based on parametrized policies, where this composition happens without the need of a counit, leading to a \"discounted state\" of a dynamical system. This has some resemblance to a List algebra, taken over a bicategory of linear relations of a vector space instead of over Set. The discounted state is used in the literature to prove the Policy Gradient Theorem, which we interpret as an Euler integration for noncommutative operators.",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=yOze3Vmj9jQ",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-03-10T15:00:00Z",
"speaker": "Dylan Braithwaite",
"institute": "MSP",
"speakerurl": "https://dylanbraithwaite.github.io/",
"insturl": "",
"title": "String Diagrams for Actegories",
"abstract": "Actions of monoidal categories are structures useful for modelling interacting systems. They are central to the definition of optics, but have also found use elsewhere, for example in the semantics of message-passing. When working in categorical cybernetics we often depict monoidal actions using string diagrams with multiple categories juxtaposed, but this steps away from the formally specified semantics of string diagrams for monoidal categories which have coherence and completeness results making their manipulation valid for proving equalities. I will discuss how diagrams for actegories can be modelled more formally by considering them as certain bicategories using the construction of the collage of a bimodule.\n\n By depicting actegories as bicategories we obtain satisfying visual representations for actegory structures. We will see that the lax compositional structure of the collage gives rise to useful visualisations for the emergent behaviour between categories interacting via the action of a common monoidal category. This gets represented as coloured string diagrams glued together along certain shared boundaries. As a special case we can depict optics as diagrams with several regions which neatly frame the “forward”, “backward”, and “residual passing” stages of their morphisms.",
"location": "LT711 and Online",
"material": [
{
"tag": "Link",
"address": "https://www.youtube.com/watch?v=R19L6Z4x7ZU",
"linkDescription": "Video"
}
]
},
{
"tag": "Talk",
"date": "2023-03-03T15:00:00Z",
"speaker": "Carlos Zapata-Carratalá",