• Keine Ergebnisse gefunden

Theory of Computer Science A1. Organizational Matters Gabriele R¨oger

N/A
N/A
Protected

Academic year: 2022

Aktie "Theory of Computer Science A1. Organizational Matters Gabriele R¨oger"

Copied!
32
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

A1. Organizational Matters

Gabriele R¨oger

University of Basel

(2)

Organizational Matters

(3)

People

Lecturer Gabi R¨oger

email: gabriele.roeger@unibas.ch office: room 04.005, Spiegelgasse 1

(4)

People

Tutors

Augusto B. Corrˆea

email: augusto.blaascorrea@unibas.ch office: room 04.001, Spiegelgasse 5

Florian Pommerening

email: florian.pommerening@unibas.ch office: room 04.005, Spiegelgasse 1

(5)

Time & Place

Lectures

Monday: 13:15–16:00 Wednesday:16:15–18:00 live on Zoom

(6)

Time & Place

Exercise Sessions (starting March 8) group 1 (Augusto; in English) group 2 (Florian; in German) time: Monday 16:15–17:00 on Zoom

important: please send Florian an email with your preferred language

important: untilWednesday 23:59(March 3).

(7)

Revised Course Format since 2020

5 hours of lectures every week?!?

more hands-on experience during the lectures bring pen & paper or tablet

no increase of content

overall time unchanged (now 5+1, previously 4+2)

(8)

Revised Course Format since 2020

5 hours of lectures every week?!?

more hands-on experience during the lectures bring pen & paper or tablet

no increase of content

overall time unchanged (now 5+1, previously 4+2)

(9)

Even More Revised Course Format in 2021

Previously: Mathematical logic was part of the theory course Now: Covered in new course on Discrete Mathematics in CS We will focus on the standard curriculum and mostly use the freed time to gain a deeper understanding and more intution.

(10)

Online Course

Adam: central starting point and exercises

Website: course information, slides, additional material Zoom: lecture and exercise meetings

please use your camera

Discord: for your interaction with each other feel free to use a pseudonym

Slido: feedback during lectures join at slido.com

(11)

Course Material

Textbook (German)

Theoretische Informatik – kurz gefasst by Uwe Sch¨oning (5th edition)

covers most of the course

(12)

Course Material

Textbooks (English)

Introduction to the Theory of Computation by Michael Sipser (3rd edition)

covers most of the course also contains advanced topics beyond the scope of this course

(13)

Target Audience

target audience:

B.Sc. Computer Science, 4th semester

B.A. Computer Science, 4th or 6th semester as an elective or if interested in M.Sc. Computer Science degree

all other students welcome

prerequisites:

basic proof techniques

(mathematical induction, proof by contradiction, . . . ) basic programming skills

(14)

Enrolment

MOnA: https://services.unibas.ch/

deadline: March 29

better today, so that you get all relevant emails

(15)

Exam

written exam, 8 ECTS credits June 9, exact time and place TBA admission to exam: no prerequisites

mustregister for exam during April 12 – April 26 seehttps://philnat.unibas.ch/de/examen/

grade for course determined exclusively by the exam if you fail: one repeat attempt in FS 2022

(16)

Exercises

Exercise sheets (homework assignments):

mostly theoretical exercises some programming exercises

Exercise sessions:

the tutors and you will decide together how to use the time.

Some possibilities:

questions about exercise sheets questions about the course discussion of common problems

participation voluntary but recommended

(17)

Exercises

exercise sheets on ADAM every Wednesday

may be solved in groups of arbitrary size(recommended: 2–3) due Wednesday the following week

(upload to Adam at https://adam.unibas.ch/) scans must be legible (no photos, please)

we appreciate LATEX submissions

(18)

Questions on Organization

Questions?

(19)

About this Course

(20)

Main Objectives

We would like to understand what can be computed in principle: decidability/computability

efficiently: complexity theory

(21)

Uncomputable Problems?

Consider functions whose inputs are strings:

def program_returns_true_on_input(prog_code, input_str):

...

# returns True if prog_code run on input_str returns True

# returns False if not

def odd_program(prog_code):

if program_returns_true_on_input(prog_code, prog_code):

return False else:

return True

What is the return value of odd program if we run it on its own source code?

(22)

Uncomputable Problems?

Consider functions whose inputs are strings:

def program_returns_true_on_input(prog_code, input_str):

...

# returns True if prog_code run on input_str returns True

# returns False if not

def odd_program(prog_code):

if program_returns_true_on_input(prog_code, prog_code):

return False else:

return True

What is the return value of odd program if we run it on its own source code?

(23)

Uncomputable Problems?

Consider functions whose inputs are strings:

def program_returns_true_on_input(prog_code, input_str):

...

# returns True if prog_code run on input_str returns True

# returns False if not

def odd_program(prog_code):

if program_returns_true_on_input(prog_code, prog_code):

return False else:

return True

What is the return value of odd program if we run it on its own source code?

(24)

Solution

(25)

Why should we Study the Theory of Computation?

Theory is useful

If we want to solve a problem with a computer we need to know what is achievable. Computable? Tractable?

If the problem is not tractable, we might want to consider alternatives, e.g. a tractable variant or an approximation.

Some theoretical concepts have practical applications, e.g.

regular expressions.

Theory is fun

Often like a brainteaser: E.g. how can we solve a problem exploiting a solver for some other problem?

(26)

Why should we Study the Theory of Computation?

Theory is useful

If we want to solve a problem with a computer we need to know what is achievable. Computable? Tractable?

If the problem is not tractable, we might want to consider alternatives, e.g. a tractable variant or an approximation.

Some theoretical concepts have practical applications, e.g.

regular expressions.

Theory is fun

Often like a brainteaser: E.g. how can we solve a problem exploiting a solver for some other problem?

(27)

Content: Theoretical Foundations of Computer Science

A. background

. mathematical foundations and proof techniques B. automata theory and formal languages

(Automatentheorie und formale Sprachen) . What is a computation?

C. Turing computability (Turing-Berechenbarkeit) . What can be computed at all?

D. complexity theory(Komplexit¨atstheorie) . What can be computed efficiently?

E. more computability theory (mehr Berechenbarkeitheorie) . Other models of computability

(28)

Learning Goals

understanding the capabilities and limitationsof computers working withformal systems

comprehending formaldefinitions and theorems precise formulationof definitions, theorems and proofs analyzing formal problemsprecisely

(29)

Organizational Matters About this Course

Warning

“Wer’s nicht gewohnt ist, f¨ur den ist es ungewohnt.”

(Prof. Dr. Th. Ottmann) [If you are not used to it, it may be unusual for you.]

stay on the ball do the exercises

pay attention to details ask questions!

(30)

Warning

“Wer’s nicht gewohnt ist, f¨ur den ist es ungewohnt.”

(Prof. Dr. Th. Ottmann) [If you are not used to it, it may be unusual for you.]

What can you do?

stay on the ball do the exercises

pay attention to details ask questions!

(31)

Warning

“Wer’s nicht gewohnt ist, f¨ur den ist es ungewohnt.”

(Prof. Dr. Th. Ottmann) [If you are not used to it, it may be unusual for you.]

What can you do?

stay on the ball do the exercises

pay attention to details ask questions!

(32)

Questions about the Course

Questions?

Referenzen

ÄHNLICHE DOKUMENTE

for 2.: identical to (1), only that M B only recognizes B and therefore the simulation does not necessarily terminate if y 6∈ B. Since y 6∈ B iff x 6∈ A, the procedure still

by Uwe Sch¨ oning (5th edition) covers the part on logic, but also advanced topics beyond the scope of the course Theoretische Informatik – kurz gefasst by Uwe Sch¨ oning

by Uwe Sch¨ oning (5th edition) I covers large parts of the course,.. but not the part

Sch¨ oning: Logik f¨ ur Informatiker Picture courtesy of graur razvan ionut / FreeDigitalPhotos.net...

solution: produce with syntactic inference rules formulas that are logical consequences of given formulas.. advantage: mechanical method can easily be implemented as

Objects are described by terms that are built from variable, constant and function symbols. Properties and relations are described by formulas that are built from

I Predicate logic is more expressive than propositional logic and allows statements over objects and their properties. I Objects are described by terms that are built from

B5.1 Semantics of Predicate Logic B5.2 Free and Bound Variables B5.3 Logical Consequences B5.4 Further Topics.. B5.5 Summary.. B5.1 Semantics of Predicate Logic..