Initial commit; the project proposal and git ignore list.

parents
*.pyc
*.sw[a-z]
*.o
*.out
*.aux
*.log
*.pdf
*.toc
\documentclass[10pt,a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,hyperref,graphicx,booktabs,float}
% Paragraph indentation
\setlength{\parindent}{0pt}
\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
\title{Mathematical Term Rewriting System}
\author{Taddeus Kroes (taddeuskroes@hotmail.com)
\and Sander Mathijs van Veen (smvv@kompiler.org)}
\begin{document}
\maketitle
\tableofcontents
\section{Introduction}
TODO
TODO
TODO
\section{Purpose}
\begin{itemize}
\item A user can simplify / reduce a mathematical expression.
\item Program can verify the user's reduction step.
\item A user should be able to ask for zero, one or more hints (with a
maximum of one hint per reduction step).
\item Program can generate exercises using predefined templates.
\end{itemize}
\section{Components}
\subsection{Input parsing and canonical form}
\begin{itemize}
\item Parse expressions and interpret functions (\texttt{integrate()},
\texttt{expand()}, \texttt{diff()}, etc.). This will include building a
parser generator using \emph{bison} and \emph{flex}.
\item Canonicalize an expression: $4 + x^2 + x \rightarrow x^2 + x + 4$.
\end{itemize}
\subsection{Validation and tutoring}
\begin{itemize}
\item Validate expressions with the expression of given exercise.
\item If requested, select the best hint (based on the chosen strategy).
\item Generate exercise using predefined templates.
\end{itemize}
\subsubsection{Modules}
\begin{itemize}
\item \emph{TODO}
\end{itemize}
\subsection{Graphical user interface}
\begin{itemize}
\item Mathematical notation viewer:
\begin{itemize}
\item Rewrite shell expressions to \LaTeX.
\item \LaTeX $ $ to HTML/CSS/JS using \emph{MathJax}.
\end{itemize}
\item View hints (if requested by the user) in the notation viewer.
\item Evaluate the GUI with some early adopters (few pupils and a teacher).
\end{itemize}
\subsection{Screencast, tutorial and final report}
\begin{itemize}
\item Create a screencast to demonstrate the project.
\item Write a few short-length tutorials (how to use the system).
\item Write the final report (e.g. evaluation of the project).
\end{itemize}
\section{European credits}
\begin{tabular}{rl}
\toprule
EC & Component \\
\midrule
3 & Input parsing and canonical form \\
9 & Validation and tutoring \\
3 & Graphical user interface \\
3 & Screencast, tutorial and final report \\
\bottomrule
\end{tabular}
\end{document}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment