From 3ec22536e7825e64cba08fe468549047b4241b59 Mon Sep 17 00:00:00 2001
From: Michael Leuschel <leuschel@cs.uni-duesseldorf.de>
Date: Sat, 26 May 2018 09:03:25 +0200
Subject: [PATCH] add Makefile entry to make slides

---
 Makefile                                   |   5 +-
 notebooks/presentations/SETS_RODIN18.ipynb | 109 +++++++++++++++++----
 2 files changed, 95 insertions(+), 19 deletions(-)

diff --git a/Makefile b/Makefile
index 64c930f..d899149 100644
--- a/Makefile
+++ b/Makefile
@@ -12,4 +12,7 @@ latex:
 		echo 'Generating Latex for: '; echo $$spec ; \
 		jupyter nbconvert $$spec --to latex ; \
 		done
-	echo "done"
\ No newline at end of file
+	echo "done"
+
+slides:
+	jupyter nbconvert notebooks/presentations/SETS_RODIN18.ipynb --to slides --post serve
\ No newline at end of file
diff --git a/notebooks/presentations/SETS_RODIN18.ipynb b/notebooks/presentations/SETS_RODIN18.ipynb
index 5f543e8..b99fbcc 100644
--- a/notebooks/presentations/SETS_RODIN18.ipynb
+++ b/notebooks/presentations/SETS_RODIN18.ipynb
@@ -2,21 +2,33 @@
  "cells": [
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "## Introduction to B ##"
    ]
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "### Basic Datavalues ###"
    ]
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "source": [
     "B provides the booleans, strings and integers as built-in datatypes."
    ]
@@ -24,7 +36,11 @@
   {
    "cell_type": "code",
    "execution_count": 1,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "outputs": [
     {
      "data": {
@@ -44,7 +60,11 @@
   {
    "cell_type": "code",
    "execution_count": 2,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "outputs": [
     {
      "data": {
@@ -64,7 +84,11 @@
   {
    "cell_type": "code",
    "execution_count": 3,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "outputs": [
     {
      "data": {
@@ -83,7 +107,11 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "Users can define their own datatype in a B machine.\n",
     "One distinguishes between explicitly specified enumerated sets and deferred sets."
@@ -92,7 +120,11 @@
   {
    "cell_type": "code",
    "execution_count": 5,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "outputs": [
     {
      "name": "stdout",
@@ -125,7 +157,11 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "source": [
     "For animation and constraint solving purposes, ProB will instantiate deferred sets to some finite set (the size of which can be controlled)."
    ]
@@ -133,7 +169,11 @@
   {
    "cell_type": "code",
    "execution_count": 6,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "subslide"
+    }
+   },
    "outputs": [
     {
      "data": {
@@ -152,7 +192,11 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "### Pairs ###\n",
     "B also has pairs of values, which can be written in two ways:"
@@ -161,7 +205,11 @@
   {
    "cell_type": "code",
    "execution_count": 7,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
    "outputs": [
     {
      "data": {
@@ -181,7 +229,11 @@
   {
    "cell_type": "code",
    "execution_count": 8,
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
    "outputs": [
     {
      "data": {
@@ -227,7 +279,11 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "### Sets ###\n",
     "Sets in B can be specified in multiple ways.\n",
@@ -398,14 +454,22 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "## Expressions vs Predicates vs Substitutions ##"
    ]
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "\n",
     "### Expressions ###\n",
@@ -521,7 +585,11 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "## Predicates\n",
     "ProB can also be used to evaluate predicates (B distinguishes between expressions which have a value and predicates which are either true or false)."
@@ -628,7 +696,11 @@
   },
   {
    "cell_type": "markdown",
-   "metadata": {},
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
    "source": [
     "### Substitutions ###\n",
     "B also has a rich syntax for substitutions, aka statements.\n",
@@ -645,6 +717,7 @@
   }
  ],
  "metadata": {
+  "celltoolbar": "Slideshow",
   "kernelspec": {
    "display_name": "ProB 2",
    "language": "prob",
-- 
GitLab