Spring 2021 | Exercises and python framework for discrete mathematics course
 
 
 
 
 
 
Go to file
h7x4 b06a6e58f9 Add exam 2021-08-29 19:57:57 +02:00
.gitlab/graphics/chrome-extension Add images 2021-05-17 20:41:10 +02:00
exam Add exam 2021-08-29 19:57:57 +02:00
exam_template Remove hasse (moved to relations) 2021-05-17 23:40:12 +02:00
exam_template_graphics Add kruskals algorithm 2021-05-17 23:33:29 +02:00
exercise1 Init commit 2021-03-24 11:48:48 +01:00
exercise2 Init commit 2021-03-24 11:48:48 +01:00
exercise3 Remove temporary file 2021-03-25 15:17:38 +01:00
exercise4 Init commit 2021-03-24 11:48:48 +01:00
exercise5 Init commit 2021-03-24 11:48:48 +01:00
exercise6 Init commit 2021-03-24 11:48:48 +01:00
exercise7 Init commit 2021-03-24 11:48:48 +01:00
exercise8 Add exercise 8 2021-03-25 00:22:06 +00:00
exercise9 Add the rest of the exercises 2021-05-03 01:06:04 +02:00
exercise10 Add the rest of the exercises 2021-05-03 01:06:04 +02:00
exercise11 Add the rest of the exercises 2021-05-03 01:06:04 +02:00
exercise12 Add the rest of the exercises 2021-05-03 01:06:04 +02:00
tools Update AND detection for chrome extension 2021-05-17 20:32:14 +02:00
.gitignore Add exam template 2021-05-10 17:41:58 +02:00
.gitlab-ci.yml Add gitlab ci for compiling documents 2021-03-24 13:46:37 +00:00
README.md Add kruskals algorithm 2021-05-17 23:33:29 +02:00
generate_pdfs.sh Change generate_pdfs to bash 2021-05-17 22:11:24 +02:00

README.md

MA0301 - Spring 2021 - Diskret Matematikk

Using styling files from oysteikt/texmf

Exercises

Num Exercise PDF Answer PDF Solutions PDF
1 wiki.math.ntnu.no ex1.pdf wiki.math.ntnu.no
2 wiki.math.ntnu.no ex2.pdf wiki.math.ntnu.no
3 wiki.math.ntnu.no ex3.pdf wiki.math.ntnu.no
4 wiki.math.ntnu.no ex4.pdf wiki.math.ntnu.no
5 wiki.math.ntnu.no ex5.pdf wiki.math.ntnu.no
6 wiki.math.ntnu.no ex6.pdf wiki.math.ntnu.no
7 wiki.math.ntnu.no ex7.pdf wiki.math.ntnu.no
8 wiki.math.ntnu.no ex8.pdf wiki.math.ntnu.no
9 wiki.math.ntnu.no ex9.pdf wiki.math.ntnu.no
10 wiki.math.ntnu.no ex10.pdf wiki.math.ntnu.no
11 wiki.math.ntnu.no ex11.pdf wiki.math.ntnu.no
12 wiki.math.ntnu.no ex12.pdf wiki.math.ntnu.no

Automation


VSCode snippets

See snippets for LaTeX

See snippets for Makefile


Chrome plugin

Chapter 1. 2. 3. Boolean calculator

Boolean Calculator

Automates calculating boolean expression step by step by running the input through https://boolean-algebra.com/

Outputs the resulting set of expressions to either propositional logic, boolean algebra or set operations.

Converts output to LaTeX

  • Finished

NOTE: there are some bugs when converting boolean algebra AND operations to PL/S

Chapter 4. Induction

Automates proof by induction by running the input through https://wolframalpha.com/

Converts output to LaTeX

  • Finished

Chapter 6. Combinatorics

Permutation/Combination Calculator

Permutations / Combinations Calculator

Computes permutations and combinations

Outputs to LaTeX

  • Finished

Python framework

See examples of what the engine for the exam template can do here: exam_template_graphics.pdf

Chapter 1. Truthtables (propositional logic)

Capabilities:

  • Calculate and render truthtable for propositional logic expressions

Chapter 3. Sets

Capabilities:

  • Calculate and output powersets

Chapter 5. Relations

Capabilities:

Proofs:

  • Check whether relation is reflexive
  • Check whether relation is symmetric
  • Check whether relation is antisymmetric
  • Check whether relation is transitive
  • Check whether relation is an equivalence relation
  • Check whether relation is a partial order

Graphs:

  • Draw a hasse diagram from a partial order
  • Draw an graph from any relation

Note: Checking whether a relation has a property in this context means that it goes over every pair of related elements and looks for contradictions. This program can not prove relation properties algebraically

Chapter 6. Combinatorics

Capabilities:

  • Make an inclusion exclusion expression from list of conditions

Chapter 7. Graph theory

Capabilities:

Inputs:

  • Input a graph from a matrix
  • Input a graph from a node/edge list
  • Input a complete graph from a node number

Outputs:

  • Output a graph to a matrix
  • Draw an undirected graph
  • Draw a directed graph
  • Find a minimal spanning tree with Kruskals algorithm

Chapter 8. Finite state automata

Capabilities:

  • Draw a finite state machine
  • Output a finite state machine table
  • Calculate input based on a finite state machine

Python

Capabilities:

  • Include a raw python program, and capture its output into a listing