The talk will present a new SMT-based, probabilistic, syntax-guided method to discover numerical inductive invariants. The core idea is to initialize frequency distributions from the program's source code, then repeatedly sample lemmas from those distributions, and terminate when the conjunction of learned lemmas becomes a safe invariant. The sampling process gets further optimized by priority distributions fine-tuned after each positive and negative sample. The stochastic nature of this approach admits simple, asynchronous parallelization. This approach is implemented in a tool called FreqHorn which shows competitive performance on a range of programs.

Presenter: Gregory Fedyukovitch

Wednesday, June 6, room 405, Faculty of Mathematics and Mechanics SPBSU.

]]>Rytter algorithm will be explained and example will be provided.

Supplementary materials:

Wojciech Rytter. Context-free recognition via shortest paths computation: a version of Valiant's algorithm (https://www.sciencedirect.com/science/article/pii/030439759400265K)

Presenter: Ekaterina Shemetova

Date: May 7, 2018

Time: 17:15

Venue: room 3248, Faculty of Mathematics and Mechanics, Saint Petersburg State University, Stary Peterhof, Universitetski pr., 28

]]>Supplementary materials:

V. Bala, E. Duesterwald, and S. Banerjia. Dynamo: a transparent dynamic optimization system. ACM SIGPLAN Notices, 35(5):1–12, 2000.

C. F. Bolz, A. Cuni, M. Fijalkowski, and A. Rigo. Tracing the Meta-level: PyPy’s Tracing JIT Compiler. In Proc. of ICOOOLPS, pages 18–25. ACM, 2009.

Presenter: Yuri Kravchenko

Date: April 23, 2018

Time: 17:15

Venue: room 3248, Faculty of Mathematics and Mechanics, Saint Petersburg State University, Stary Peterhof, Universitetski pr., 28

]]>In practical implementations, however, some deterministic way of SLD-tree construction has to be chosen (in the default case --- depth-first), which leads to a loss of certain properties (for depth-first search --- the completeness). There exist several approaches to fix this deficiency.

In the talk an alternative to the default way of search implementation, based on memoization, as well as its properties, will be considered.

Supplementary materials: Hisao Tamaki, Taisuke Sato. OLD Resolution with Tabulation // ICLP, 1986.

Presenter: Dmitry Boulytchev

Date: April 16, 2018

Time: 17:15

Venue: room 3248, Faculty of Mathematics and Mechanics, Saint Petersburg State University, Stary Peterhof, Universitetski pr., 28

]]>Supplementary materials: Conor McBride. First-order unification by structural recursion. Journal of Functional Programming, 2003.

Presenter: Dmitri Rozplokhas

Date: April 9, 2018

Time: 17:15

As a result of supercompilation, some useful transformations can be carried out:

1. elimination of useless program parts;

2. execution of operations, if their operands are known well enough;

3. turning multi-pass algorithms into single-pass;

4. elimination of intermediate data structures.

Experimental implementations of supercompiler are available online, which makes it possible to investigate their both strong and weak points.

Presenter: Sergey Romamenko, Keldysh Institute for Applied Mathematics, Russian Academy of Science, Moscow.

Date: March 30, 2018

Time: 13:00

Supplementary materials: James Cheney. Scrap Your Nameplate (functional pearl) // ICFP'05.

Presenter: Екатерина Вербицкая

Date: March 26, 2018

Time: 17:15

1) an algorithm with best known time complexity is proposed;

2) the optimality of the time complexity is proved;

3) the Dyck reachability problem reduced to the Boolean Matrix Multiplication.

Supplementary materials: K.Chatterjee, B.Choudhary, A.Pavlogiannis. Optimal Dyck Reachability for Data-Dependence and Alias Analysis

Presenter: Rustam Azimov

Date: March 19, 2018

Time: 17:15

Supplementary materials:

M. Berglund et al. Shuffled Languages — Representation and Recognition

Presenter: Артем Горохов

Date: March 12, 2018

Time: 17:15

It could be hard to reason about `weak` behaviors for ordinary programmers. In order to cope with that, many memory models provides a so-called DRF guaratee. DRF guaratee states, that if the programm has no races under SC memory model, then it has no weak behaviors under given memory model.

Unfortunately, DRF guaratee is `global`. One single data-race in program completely violates it.In this talk more strong Local DRF guarantee will be presented, along with the new memory model that provides this guarantee.

Supplementary materials:

Stephen Dolan, KC Sivaramakrishnan, Anil Madhavapeddy. Bounding Data Races in Space and Time // PLDI 2018.

Presenter: Eugene Moiseenko

Date: March 5, 2018

Time: 17:15

**Language:** English

The main goal of the school is getting experience in research projects development in international students teams and mastering with the newest technologies.

Detailed information about the school could be found here.

]]>Problem 2. Reals are strictly "larger" than integers in terms of injection. But are two arbitrary sets comparable? If they are, what we can say about this order?

Both these problems can be solved using a concept of ordinals. After we build ordinals and alephs hierarchy, we immediately have to deal with a famous generalized continuum hypothesis (GCH). To tackle this problem we need to learn a little more about sets. Formal ZFC theory is introduced. The solutions of independence of GCH are sketched.

If time permits we will learn how GCH affects the very basic concepts of semantics and deduction of a predicate logic. For example, HOL with standard semantics is a controversial notion.

Presenter: Kirill Smirnov

Date: February 26, 2018

Time: 17:15

Supplementary materials:

Paul Laforgue, Yann Régis-Gianas. Copattern matching and first-class observations in OCaml, with a macro // PPDP-17.

Presenter: Dmitry Kosarev

Date: February 19, 2018

Time: 17:15

Supplementary materials:

1. U. Berger, H. Schwichtenberg. An inverse to the evaluation functional for typed λ-calculus.

2. T. Altenkirch and T. Uustalu. Normalization by evaluation for λ→2.

3. U. Berger, M. Eberl, H. Schwichtenberg. Term rewriting for normalization by evaluation.

Presenter: Daniil Berezun

Date: February 12, 2018

Time: 17:15

Presenter --- Sergey Bozhko

Date: December 11, 2017

Time: 17:15

Supplementary materials:

Philip Wadler. Theorems for free!

Presenter: Dmitri Rozplokhas

Date: December 4, 2017

Time: 17:15

Presenter --- Eugene Moiseenko

Date: November 27, 2017

Time: 17:15

The talk is based on the paper (in Russian).

The full version of the proof is available here(in Russian).

Presenter --- Anton Podkopaev

Date: November 20, 2017

Time: 17:15

In the talk we will discuss

- the features, which a well-designed code generator should have;

- an intermediate approach for code generation, used in OCaml compiler, which lies in between the naive one and that used in the "visitors" library;

- implementation details of the "visitors" library.

Supplementary materials:

1. Manual

2. ICFP-2017 talk (from 22-th minute)

3. Francois Pottier. Visitors Unchained. ICFP 2017

Presenter --- Dmitry Kosarev.

Date: November 13, 2017

Time: 17:15