Wie wichtig ist diskrete Mathematik für einen Informatiker? [geschlossen]

8

Wie der Titel schon sagt,

Wie wichtig ist diskrete Mathematik für einen Informatiker? Hintergrund: Ich strebe einen Master mit Schwerpunkt auf Grundlagen wie Algorithmen, Komplexität und Berechenbarkeitstheorie sowie Programmiersprachen an, um eine gute Grundlage für die Arbeit im Bereich Parallel Computing zu erhalten.

Noch mehr Hintergrund: Meine Universität gewährt viel Freiheit bei der Auswahl der Kurse für meinen Master-Abschluss. Es heißt offiziell "Software Engineering", aber aufgrund des breiten Spektrums an Wahlfächern ist ein anderer Schwerpunkt möglich. Interessanterweise ist keines der Wahlfächer eine Vorlesung in Mathematik! Ich denke darüber nach, einen Kurs über diskrete Mathematik zu machen, dessen erfolgreicher Abschluss ein halbes Semester dauern würde, selbst wenn ich ihn nicht für meinen Abschluss verwenden kann. Mit dieser Frage versuche ich herauszufinden, ob der Aufwand gerechtfertigt ist.

mort
quelle
1
Ich hatte diskrete Mathematik im Bachelor ... half mir in Computergrafik und künstlicher Intelligenz.
K ..

Antworten:

27

Als Informatiker, der einen Master-Abschluss mit den Schwerpunkten "Algorithmen, Komplexität und Berechenbarkeitstheorie und Programmiersprachen" anstrebt, würde ich sagen, dass diskrete Mathematik sehr wichtig ist.

Diskrete Mathematik hilft Ihnen beim Schwerpunkt "Algorithmen, Komplexität und Berechenbarkeitstheorie" mehr als bei der Programmiersprache. Das Verständnis von Mengenlehre, Wahrscheinlichkeit und Kombinationen ermöglicht es Ihnen, Algorithmen zu analysieren. Sie können Parameter und Einschränkungen Ihrer Algorithmen erfolgreich identifizieren und erkennen, wie komplex ein Problem / eine Lösung ist.

In Bezug auf die Programmiersprache berührt die diskrete Mathematik nicht, wie man tatsächlich programmiert. sondern kann für die Spezifikation des Softwaresystemdesigns verwendet werden. Ich habe "ZED" an der Universität verwendet und es ging darum, ein System unter Verwendung der Mengenlehre zu entwerfen. Ich bin mir jedoch nicht sicher, wie viel Prozent der Softwaresysteme heutzutage mit Mengenlehre entwickelt werden.

Das letzte wichtige Konzept, um aus der diskreten Mathematik herauszukommen, ist die Boolesche Algebra. Dies ist nicht nur zum Erstellen einer logischen Lösung sehr nützlich, sondern auch beim Programmieren. Software kann einfach nach der darin enthaltenen booleschen Logik erstellt / kaputt gemacht werden.

Insgesamt ist diskrete Mathematik größtenteils keine Zahlenklasse. Es bringt Sie dazu, Ihr Gehirn auf eine Weise zu benutzen, wie es keine anderen Klassen tun. Es ist eine logische Denkklasse und Sie müssen Geduld haben, wenn es Ihnen nicht leicht fällt, Beweise / logische Berechnungen durchzuführen. Ich habe gesehen, wie Leute die Hauptfächer gewechselt haben, weil sie nicht "abstrakt" genug denken konnten, um durch den Kurs zu kommen.

Kurz gesagt, ich würde eine Haltung einnehmen, dass diskrete Mathematik für einen Informatiker / Software-Ingenieur eine wichtige Klasse wäre.

Kcvin
quelle
1
Ich wollte antworten, aber das ist im Wesentlichen meine Antwort.
Eliot Ball
Es ist ein paar Jahre her, aber ich erinnere mich, dass Diskrete Mathematik in Sprachen ging. Die erste Hälfte der Klasse bestand aus Boolescher Algebra und Mengen, die zweite Hälfte aus Sprachen und Automaten. Kombinierten sie nur zwei Klassen?
Chris
Ich denke, es hängt vom Tempo der Klasse ab. Wenn es um eine Reihe von Theorien gehen würde, könnte man wohl davonkommen, wenn man sagt, es sei eine Klasse; Wenn Sie jedoch so etwas wie eine Automatisierungsspezifikation mit der Sprache Set schreiben, ist dies eine Kombination aus zwei Klassen. Diskrete Mathematik ist ein Thema, das breit genug ist, um nur Theorie zu lehren und Beispiele (dh Hausaufgaben) zu verwenden, um die Theorie zu erläutern.
Kcvin
2

Eigentlich ist die diskrete Mathematik das Rückgrat der Informatik oder ich sage die Theoretische Informatik. Ohne das Studium der diskreten Mathematik vermissen wir den Kern der Informatik-Logik-Entwicklung. Es bringt rationale Klarheit in Ihre Lösungen und eine formale Methode zur Analyse eines Problems.

Jedes Gebiet der Informatik bezieht sich auf diskrete Objekte, sei es Datenbanken, Nueral-Netzwerke, Computerorganisation, Compiler, Netzwerkprogrammierung usw. Ich würde sagen, es ist das "übergeordnete Fach" der Informatik, und jeder sollte dieses Fach studieren.

Pranay Bhattacharya
quelle