visa förståelse för grundläggande notation inom mängdteori, såsom ekvivalens, kardinalitet, uppräknelighet och oändliga mängder,
kunna karaktärisera funktioner, injektiva/surjektiva/bijektiva funktioner, partial- och totalordningar och deras egenskaper, ekvivalensrelationer
förstå grundläggande bevistekniker såsom induktion,
vara bekant med boolesk algebra och första ordningens logik,
förstå fundamentala strukturer som träd och grafer,
förstå grunderna i att konstruera algoritmer för grafer,
känna till grundläggande koncept inom kombinatorik (t.ex. permutationer, kombinationer),
känna till grundläggande typer av ordnade mängder, såsom gitter och kompletta partialordningar.
kunna tillämpa grundläggande strategier för bevisföring, såsom direkta bevis, kontrapositiva bevis, bevis genom motsägelse.
Färdighet och förmåga
kunna använda notationen för mängder, relationer, funktioner och ordningar för att definiera strukturer och diskutera deras egenskaper,
kunna använda induktion för att bevisa egenskaper hos oändliga mängder av objekt,
kunna manipulera, transformera och förenkla booleska uttryck enligt den booleska algebrans lagar,
kunna arbeta med träd och grafer och konstruera bevis för deras egenskaper,
kunna implementera enkla algoritmer och test för egenskaper hos diskreta strukturer,
be able to use divisibility rules, the Euclidean algorithm, and modular arithmetic,
känna till tekniker för att konstruera grafer och några grundläggande exempel,
kunna arbeta med permutationer och kombinationer samt använda dem i beräkningsproblem,
kunna använda och applicera lämpliga typer av ordnade strukturer som gitter och kompletta partialordningar,
kunna använda grundläggande strategier för bevisföring samt genomöra enkla bevis.
Värderingsförmåga och förhållningssätt
kunna använda mängder, grafer och träd för att representera aspekter av verkliga problem och bygga algoritmer på dessa strukturer,
visa förmåga att ta fram en lämplig bevisstrategi för ett givet problem.
Kursinnehåll
Mängder, mängdekvivalenser, oändliga mängder, uppräkningsbarhet, funktioner, egenskaper hos funktioner (injektiva, surjektiva och bijektiva funktioner), relationer, ordningar (totala och partiella), transitivitet, (anti-) symmetri, reflexion, ekvivalensrelationer och klasser, kompletta partialordningar, boolesk algebra, predikatlogik, bevis, induktion, talteori, grafer, träd, grafalgoritmer, kombinatorik, bevisstrategier.
Förutsättningar
EDAA20 Programmering och databaser eller EDAA45 Programmering, grundkurs eller EDAA50 Programmeringsteknik eller EDAA55 Programmeringsteknik eller EDAA65 Programmering eller EDAB05 Programmering, grundkurs