%--*- latex -*-----------------------------------------------------------------
%$Author: saulius $
%$Date: 2020-06-04 14:58:32 +0300 (Thu, 04 Jun 2020) $ 
%$Revision: 1524 $
%$URL: svn+ssh://saulius-grazulis.lt/home/saulius/svn-repositories/seminarai/2020-verifikacjos-seminarui/slides.tex $
%------------------------------------------------------------------------------

\documentclass[mathserif]{beamer}
\usetheme{Warwick}
\useoutertheme{infolines}
\setbeamertemplate{headline}{} % removes the headline the infolines inserts
%\setbeamertemplate{footline}[frame number]
\renewcommand\familydefault{\rmdefault}
% For XeLaTeX:
% https://tex.stackexchange.com/questions/452151/how-do-i-render-the-word-v%C7%ABlundarkvi%C3%B0a-with-bookman-and-xelatex
% "Use an OpenType clone of Bookman, for instance TeX Gyre Bonum":
\usepackage{fontspec}
\setmainfont{TeX Gyre Bonum}

\usepackage[style=authoryear,maxnames=1,doi=true,url=true,backend=biber]{biblatex}
\addbibresource{bibliography/citations.bib}
\addbibresource{bibliography/Kann.bib}
\newcommand{\mycite}{\parencite}


\usepackage{colordvi}
\usepackage{graphicx}
\usepackage{tikz}
\usetikzlibrary{snakes}
\usepackage{verbatim}
\usepackage{listings}
\usepackage{chemfig}
\usepackage{listings}

% https://en.wikibooks.org/wiki/LaTeX/Algorithms
% http://mirror.datacenter.by/pub/mirrors/CTAN/macros/latex/contrib/algorithmicx/algorithmicx.pdf
\usepackage{algpseudocode}
\usepackage{algorithm}
\usepackage{amssymb}

\include{commands}

\newcommand{\RCSid}[1]{\fontsize{7pt}{7pt}\selectfont $#1$ \today}


%%BEGIN LANGUAGE en
\title{Computer architecture. An introduction}
%%END LANGUAGE en


\author{Saulius Gražulis}

\date{Vilnius, 2020}

\begin{document}

%------------------------------------------------------------------------------

\begin{frame}
    \titlepage

\input{affiliation}
    
    \begin{center}
      \mbox{}
      \hfill\hfill\hfill
      \includegraphics[height=1.5cm]{images/sp_VU_zenklas.eps}
      \hfill
      \includegraphics[height=1.5cm]{images/2019-05-02_Melynas_MIF-zenklas242x244.png}
      \hfill\hfill\hfill
      \mbox{}
    \end{center}

    \vfill

    %% \tiny
    %% \RCSid{
    %%   $Id: slides.tex 1524 2020-06-04 11:58:32Z saulius $
    %% }
    \begin{flushright}
      \begin{minipage}[c]{0.67\textwidth}
        \tiny\raggedright
        %%BEGIN LANGUAGE en
        This set of slides may be copied and used as specified in the
        %%END LANGUAGE en
        \myhref{http://creativecommons.org/licenses/by-sa/4.0/}{Attribution-ShareAlike
          4.0 International}
license
      \end{minipage}
      %%
      \begin{minipage}[c]{1.5cm}
        \myhref{http://creativecommons.org/licenses/by-sa/4.0/}{
          \includegraphics[width=1.5cm]{images/CC-BY-SA.eps}
        }
      \end{minipage}
    \end{flushright}

\end{frame}

%==============================================================================

\begin{frame}
\frametitle{Course organisation}

  \vspace{-\baselineskip}
  {
    \scriptsize
    \mywebref{https://emokymai.vu.lt/course/view.php?id=15112}
  }
  
\includegraphics[page=3,width=\textwidth,trim=0 17.5cm 0 2cm,clip]
{images/dalyko-aprašas/dalyko_aprašas_en.pdf}
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Course exam requirements}

  %% \vspace{-\baselineskip}
  %% {
  %%   \scriptsize
  %%   %%LANGUAGE lt \mywebref{https://emokymai.vu.lt/pluginfile.php/322396/mod\_resource/content/0/dalyko\_aprašas\_lt.pdf}
  %%   %%LANGUAGE en \mywebref{https://emokymai.vu.lt/pluginfile.php/322370/mod\_resource/content/0/dalyko\_aprašas\_en.pdf}
  %%   %%LANGUAGE ru \mywebref{https://emokymai.vu.lt/pluginfile.php/322370/mod\_resource/content/0/dalyko\_aprašas\_en.pdf}
  %% }
  
\includegraphics[page=3,width=\textwidth,trim=0 7.85cm 0 11.97cm,clip]
{images/dalyko-aprašas/dalyko_aprašas_en.pdf}
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Course exam requirements}

  \vspace{-\baselineskip}
  {
    \scriptsize
\myhref{https://emokymai.vu.lt/pluginfile.php/322370/mod\_resource/content/0/dalyko\_aprašas\_en.pdf}{Course description}
  }
  
  \vspace{2\baselineskip}
\includegraphics[page=3,width=\textwidth,trim=0 1cm 0 21.8cm,clip]
{images/dalyko-aprašas/dalyko_aprašas_en.pdf}
  %%
  %% \includegraphics[page=4,width=\textwidth,trim=0 24.5cm 0 1cm,clip]
  %%   %%LANGUAGE lt {images/dalyko-aprašas/dalyko_aprašas_lt.pdf}
  %%   %%LANGUAGE en {images/dalyko-aprašas/dalyko_aprašas_en.pdf}
  %%   %%LANGUAGE ru {images/dalyko-aprašas/dalyko_aprašas_en.pdf}


\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Course structure}

  \begin{itemize}
  \item
    %%BEGIN LANGUAGE en
    First half: understanding of internal functions of a CPU and a
    computer on the level of logic circuits; modelling in Logisim;
    %%END LANGUAGE en



  \item
    %%BEGIN LANGUAGE en
    Second half: acquaintance with some widespread and self-made
    computer architectures and assembler programming;
    %%END LANGUAGE en


  \end{itemize}
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Rules of video conferencing}

  \begin{itemize}
  \item
    %%BEGIN LANGUAGE en
    Only the speaker has the microphone ON; all others must switch
    their microphones \textbf{OFF};
    %%END LANGUAGE en



  \item
    %%BEGIN LANGUAGE en
    The speaker \textbf{should} have camera on (VU rules!);
    %%END LANGUAGE en


    
  \item
    %%BEGIN LANGUAGE en
    When a teacher asks you a question, you \textbf{must} raise your
    hand and, when assigned a talk slot, switch on you microphone and
    answer; or type your answer in the chat, as requested (VU rules!);
    %%END LANGUAGE en



  \item
    %%BEGIN LANGUAGE en
    To ask a question, use the ``raise hand'' functionality and/or post
    your question to the forum;
    %%END LANGUAGE en



  \item
    %%BEGIN LANGUAGE en
    Recordings of lectures are copyrighted; it is \textbf{not
      permitted} to post them outside the university without consent of
    the lecturer and university officials;
    %%END LANGUAGE en


    
  \item
    %%BEGIN LANGUAGE en
    If the connection is interrupted, \textbf{do not leave} the
    lecture – the teacher will set up alternative connection in
    several minutes;
    %%END LANGUAGE en



  \end{itemize}
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Why study computer architecture?}

  \begin{quote}
    \footnotesize
    Most computer users have an incorrect, but useful, cognitive
    metaphor for computers in which the user says (or types or clicks)
    something and a mystical, almost intelligent or magical, behavior
    happens.
  \end{quote}
  \rightline{
    \begin{minipage}{0.4\textwidth}
      \scriptsize
      Charles W.\ Kann \parencite*{Kann2016}
    \end{minipage}
  }

  \vfill
  \begin{itemize}
  \item
We must understand architecture if we want to program it efficiently
  \item
    %%BEGIN LANGUAGE en
    Improves our education – we finally understand how \textbf{these}
    things work!
    %%END LANGUAGE en
  \item
It is a terribly interesting subject :)
  \end{itemize}
  \vfill
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{What is a computer?}
  
  \begin{center}
    \begin{itemize}
    \item
Computer is \textbf{digital}:
      \newline
      \includegraphics[height=3cm]{images/Ural-control-pannel.png}
      \textit{
        \tiny
        \myhref{https://emural.clan.su}{Emural} screenshot
      }
    \item
Computer is \textbf{automatic}:
      \newline
      \includegraphics[height=3cm]{images/Skylab.jpg}
      \textit{
        \tiny
        Wikipedia:
        \myhref{https://commons.wikimedia.org/wiki/File:Skylab_(SL-4).jpg}{Skylab}. Image
        by NASA, public domain.
      }
    \end{itemize}
  \end{center}

\end{frame}

%------------------------------------------------------------------------------

\begin{frame}[containsverbatim]
\frametitle{What is a computer?}
  
  \begin{center}
    \begin{itemize}
    \item
Computer can be \textbf{reprogrammed}:
      
      \vspace{0.5\baselineskip}
      \lstinputlisting[language=perl,basicstyle=\ttfamily\tiny,frame=trBL]{examples/code/random-line-short}
    \item
      %%BEGIN LANGUAGE en
      Computer can solve \textbf{any} task that is feasible
      \textbf{mathematically}
      %%END LANGUAGE en
      \mycite{Turing1937,Wikipedia2020}:
      
      \vspace{0.5\baselineskip}
      \includegraphics[height=1.5cm]{images/Turing_machine_2b.eps}
      \tiny
      \textit{
        \myhref{https://en.wikipedia.org/wiki/File:Turing_machine_2b.svg}{Nynexman4464}
               [\myhref{https://creativecommons.org/licenses/by-sa/3.0/deed.en}{CC-BY-SA
                   3.0}]
      }
    \end{itemize}
  \end{center}

\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Side-note: Analog computers}

  \begin{center}
    \hfill
    \begin{minipage}[t]{0.4\textwidth}
      \begin{center}
        \includegraphics[width=0.9\textwidth]{images/Op-Amp_Integrating_Amplifier.eps}
      \end{center}
      {
        \vspace{-0.6\baselineskip}
        \tiny
        \rightline{
          \em
          \myhref{https://en.wikipedia.org/wiki/File:Op-Amp_Integrating_Amplifier.svg}{Inductiveload}
          [Public domain]
        }
      }

      \vspace{-0.5\baselineskip}
      \footnotesize
      $$
      V_{\text{out}}(t) = -\frac{1}{RC} \int_0^t V_{\text{in}}(t) dt
      $$

      \only<1>{
        \begin{center}
          \includegraphics[height=2.5cm]{images/TI-integrator/sin-wave.png}
        \end{center}
      }
      \only<2->{
        \begin{center}
          \includegraphics[height=2.5cm]{images/TI-integrator/square-wave.png}
        \end{center}
      }
      {
        \vspace{-0.5\baselineskip}
        \rightline{\tiny\mycite{TexasInstruments2019}}
      }
      
    \end{minipage}
    \hfill
    \hfill
    \begin{minipage}[t]{0.4\textwidth}
      \begin{center}
        \only<3>{
          \parbox{\textwidth}{
            \includegraphics[height=3.4cm]{images/Harmonic_analyser_disc_and_sphere.jpg}

            {
              \tiny
              \myhref{https://en.wikipedia.org/wiki/Tide-predicting\_machine}{
Tide-predicting machine,
              }
around
              1878

              \rightline{
                \em
                \myhref{https://commons.wikimedia.org/wiki/File:Harmonic_analyser_disc_and_sphere.jpg}{
                  Andy Dingley}
                \myhref{https://creativecommons.org/licenses/by/3.0/deed.en}{[CC
                    BY 3.0]}
              }
            }
          }
        }

        \only<4->{
          \parbox{\textwidth}{
            \includegraphics[height=3.4cm]{images/1024px-Analog_Computing_Machine_GPN-2000-000354.jpg}

            {
              \tiny
              \myhref{https://en.wikipedia.org/wiki/Analog\_computer}{
Electronic Analog computer,
              }
circa
              1949

              \rightline{
                \em
                \myhref{https://commons.wikimedia.org/wiki/File:Analog_Computing_Machine_GPN-2000-000354.jpg}{NASA}
                       [Public domain]
              }
            }
          }
        }

        \vspace{0.3\baselineskip}
        \only<5->{
          %%BEGIN LANGUAGE en
          %%BEGIN LANGUAGE lt
          \includegraphics[width=0.6\textwidth]{images/Guo2015a-Fig5-hybrid-chip.png}
          %%END LANGUAGE lt
          %%END LANGUAGE en

          {
            \tiny
            \rightline{
              \em
              \mycite{Guo2015a}
            }
          }
        }
      \end{center}
    \end{minipage}
    \hfill
    \mbox{}
  \end{center}
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{``Bubble-sort'' machine}

  \begin{center}
    \hfill
    \parbox[c]{0.4\textwidth}{
      \only<1,4->{
\includegraphics[height=6cm]{drawings/machines/bubble-sort-machine.eps}
      }
      \only<2>{
\includegraphics[height=6cm]{drawings/machines/bubble-sort-machine-direct.eps}
      }
      \only<3>{
\includegraphics[height=6cm]{drawings/machines/bubble-sort-machine-crossed.eps}
      }

      \scriptsize
      \vspace{0.5\baselineskip}
      %%BEGIN LANGUAGE en
      %%BEGIN LANGUAGE lt
      \mycite{Knuth1997},
      %%END LANGUAGE lt
      %%END LANGUAGE en
ch.\ %
      5.3.4
(p.\ 246)%
    }
    \only<1-4> {
      \begin{minipage}[c]{0.5\textwidth}
        \scriptsize
        \raggedright
        \begin{enumerate}

\item[\textit{Step 1}.] Set
          $R \leftarrow R_1$.

($R$ is an internal machine register.)

\item[\textit{Step i}.] for
          $1 < i \le N$:

Either
          \begin{enumerate}[i]
            \scriptsize
\item set
            $R_{i-1} \leftarrow R, R \leftarrow R_i$,
or

\item set
            $R_{i-1} \leftarrow R_i$,
leaving $R$ unchanged.
          \end{enumerate}

\item [\textit{Step $N+1$}.] Set
          $R_N \leftarrow R$.
        \end{enumerate}

        \only<1-3>{
          \color{white}
        }
        \only<4>{
          \color{black}
        }
        {
          %%BEGIN LANGUAGE en
          It turns out that for this automaton, the bubble sort algorithm
          is optimal!
          %%END LANGUAGE en
          (Howard B. Demuth, PhD Thesis, \cite*{Demuth1956})
        }
      \end{minipage}
    }
    \only<5> {
      \begin{minipage}[c]{0.5\textwidth}
        \begin{center}
          \includegraphics[width=4cm]{images/BESKmemories.jpg}

          \vspace{-0.4\baselineskip}
          {
            \tiny Wikipedia: the \myhref{https://en.wikipedia.org/wiki/BESK}{BESK}
            \myhref{https://en.wikipedia.org/wiki/Drum_memory}{
              drum memory
            }
          }

          \vspace{0.5\baselineskip}
          \includegraphics[height=3cm]{images/Pamiec_bebnowa_1.jpg}

          \vspace{-0.4\baselineskip}
          {
            \tiny Wikipedia: the Polish ZAM-41
            \myhref{https://en.wikipedia.org/wiki/Drum_memory}{
              drum memory
            }
          }
        \end{center}
      \end{minipage}
    }
  \end{center}

\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Float number comparisons}

  \lstset{
    language=C,
    keywordstyle=\color{blue},
    commentstyle=\color{red},
    identifierstyle=\color{red!40!black},
    stringstyle=\color{green!70!black},
    basicstyle=\ttfamily\tiny
  }
  
  \begin{center}
    \hfill
    \begin{minipage}[t]{0.4\textwidth}
      \lstinputlisting[language=C,frame=trBL]{examples/float-nan-comparisons/float-comparisons.c}
    \end{minipage}
    \hfill
    \begin{minipage}[t]{0.4\textwidth}
      \only<2-3>{
        \lstinputlisting[language=bash,basicstyle=\ttfamily\tiny,frame=trBL,firstline=3]{examples/float-nan-comparisons/float-comparisons.dat}
      }

      \only<3>{
        \scriptsize

        %%BEGIN LANGUAGE en
        Thus, for floating point number comparisons the following
        statement does \textbf{not} hold:
        %%END LANGUAGE en

        \color{ForestGreen}
        \begin{center}
          $\lnot(a \le b) \Rightarrow a > b$
        \end{center}
      }

      \rule{0.4\textwidth}{0pt}

    \end{minipage}
    \hfill
    \mbox{}
  \end{center}
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{``Patriot'' missile failure...}

  \hfill
  \begin{minipage}{4cm}
    \includegraphics[width=\textwidth]{images/Patriot_Missile.png}

    {
      \scriptsize\em
      \myhref{https://en.wikipedia.org/wiki/File:Patriot_Missile.png}{American
        Patriot Missile}
      
      [\myhref{https://creativecommons.org/licenses/by-sa/4.0/deed.en}{CC-BY-SA}]
    }
  \end{minipage}
  \hfill
  \begin{minipage}{0.6\textwidth}
    \footnotesize
    \begin{itemize}
      %%BEGIN LANGUAGE en
      \item The machine (the computer) was \textbf{binary};
      \item The time was stored in a \textbf{24 bit} register;
      \item The time was measured by the system in \textbf{1/10 second}
        units;
      \item The number 1/10 in decimal is \textbf{infinite periodic}
        binary fraction – not representable exactly in binary;
      \item The rounding error was:
      %%END LANGUAGE en
        $0.1_{10} - 0.0001\,1001\,1001\,1001\,1001\,1000_2 =
        9.5\times10^{-08}_{10}$
      %%BEGIN LANGUAGE en
      \item In 100~h, this accumulates:
      %%END LANGUAGE en
        $9.5\times10^{-08}ds \cdot 10\frac{ds}{s} \cdot
        3600\frac{s}{h} \cdot 100h = \mathbf{0.34s}$
      %%BEGIN LANGUAGE en
      \item During \textbf{0.34s} the incoming Scud missile travels
        more than half a kilometre and is missed by the Patriot system...
      %%END LANGUAGE en
    \end{itemize}
  \end{minipage}
  \hfill
  \mbox{}

\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{An overview of a computer}

Von Neumann architecture
  
  \only<1>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/CPU.eps}
    \end{center}
  }
  \only<2>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/CPU-memory-contents.eps}
    \end{center}
  }
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Command execution cycle}

  \only<1>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/01-CPU-passes-address-to-memory.eps}
    \end{center}
  }
  \only<2>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/02-CPU-memory-returns-data.eps}
    \end{center}
  }
  \only<3>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/03-CPU-instruction-execution.eps}
    \end{center}
  }
  \only<4>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/04-CPU-PC-is-incremented.eps}
    \end{center}
  }
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{JMP instruction}

  \only<1>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/11-CPU-passes-address-to-memory.eps}
    \end{center}
  }
  \only<2>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/12-CPU-memory-returns-data.eps}
    \end{center}
  }
  \only<3>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/13-CPU-PC-is-updated.eps}
    \end{center}
  }
  \only<4>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/14-CPU-requests-next-command.eps}
    \end{center}
  }

\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{STORE instruction}

  \only<1>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/21-CPU-passes-address-to-memory.eps}
    \end{center}
  }
  \only<2>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/22-CPU-memory-returns-data.eps}
    \end{center}
  }
  \only<3>{
    \begin{center}
\includegraphics[width=7cm]{drawings/CPU/23-CPU-data-value-is-stored.eps}
    \end{center}
  }
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Harvard architecture}

\only<1>{Classic}\only<2>{Modified} Harvard architecture
  
  \only<1>{
    \begin{center}
\includegraphics[width=11cm]{drawings/Harvard-architecture/CPU-Harvard.eps}
    \end{center}
  }  
  \only<2>{
    \begin{center}
\includegraphics[width=11cm]{drawings/Harvard-architecture/CPU-modified-Harvard.eps}
    \end{center}
  }  
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{I/O Ports}

  %%BEGIN LANGUAGE en
  \only<1>{Separate I/O address space}
  \only<2>{Memory-mapped I/O}
  %%END LANGUAGE en
  
  \only<1>{
    \begin{center}
\includegraphics[height=6cm]{drawings/CPU/CPU-IO.eps}
    \end{center}
  }  
  \only<2>{
    \begin{center}
\includegraphics[height=6cm]{drawings/CPU/CPU-IO-mmapped.eps}
    \end{center}
  }  
  
\end{frame}

%------------------------------------------------------------------------------

\begin{frame}
\frametitle{Take home messages}

  \begin{itemize}
  \item
    %%BEGIN LANGUAGE en
    Digital computers are automatic, programmable, universal devices
    (but analog computers also exist(ed));
    %%END LANGUAGE en


  \item
    %%BEGIN LANGUAGE en
    Knowing computer architecture is important if we want to program
    them correctly and efficiently;
    %%END LANGUAGE en
  \item
    %%BEGIN LANGUAGE en
    Various architectures exists (von Neumann, Harvard), but in all
    cases two main components – CPU and memory – are essential;
    %%END LANGUAGE en
  \item
    %%BEGIN LANGUAGE en
    The CPU fetches instructions from memory and performs various
    operations on data in memory and in registers, as indicated by
    instructions;
    %%END LANGUAGE en
  \end{itemize}
  
\end{frame}

%------------------------------------------------------------------------------

\setbeamertemplate{footline}{
  \tiny
  \rule[-0.4\baselineskip]{0pt}{1.2\baselineskip}
  \hspace{1ex}
  {\em
    A path to freedom: 
    GNU $\rightarrow$
    Linux $\rightarrow$
    Ubuntu $\rightarrow$
    MySQL $\rightarrow$
    R $\rightarrow$
    \LaTeX $\rightarrow$
    TikZ $\rightarrow$
    Dia $\rightarrow$
    Beamer
  }
}
  
\begin{frame}

\centerline{\Large Questions?}

  \vfill

  \begin{centering}
    %% \includegraphics[height=3cm]{images/Sphalerite-Quartz-261762.eps.gz}
      \begin{tabbing}
        \hspace{8mm} \=
        \includegraphics[width=4cm]{images/topaz-picture.png} \=
        \hspace{1cm} \=
        \includegraphics[width=5cm]{images/topaz-structure.png} \\
        \>
        \tiny
        \mywebref{http://en.wikipedia.org/wiki/Topaz} \> \>
        \tiny
        \mywebref{http://www.crystallography.net/2207377.html} \\
      \end{tabbing}
  \end{centering}

\end{frame}

%------------------------------------------------------------------------------

\begin{frame}%%[allowframebreaks]
\frametitle{References}

  %%\scriptsize
  %%\bibliographystyle{plain}                                                                                                                                                           
  %%\bibliographystyle{apalike}
  %%\bibliography{bibliography/citations}
  \renewcommand{\bibfont}{\scriptsize}
  \printbibliography

\end{frame}

%------------------------------------------------------------------------------                                                                                                          
\end{document}
% 2023-09-11 18:14:50 EEST
