1 Punkte von GN⁺ 2025-04-26 | 1 Kommentare | Auf WhatsApp teilen
  • Notation ist ein wichtiges Werkzeug, das das Denken unterstützt, und spielt sowohl in der Mathematik als auch in Programmiersprachen eine zentrale Rolle
  • Die APL-Sprache wurde als Versuch entwickelt, die Vorteile mathematischer Notation mit der Ausführbarkeit und Universalität von Programmiersprachen zu verbinden
  • Merkmale guter Notation sind Prägnanz, Klarheit, Suggestivität, Unterordnung von Details und die Möglichkeit formaler Beweise
  • Verschiedene mathematische Strukturen (Polynome, Transformationen, Graphen usw.) lassen sich mit APL effizient ausdrücken und transformieren
  • Einführung und Erlernen von Notation sollten natürlich im Kontext erfolgen; auch die Strukturiertheit und Allgemeingültigkeit der Notation sind wichtig

Notation als Werkzeug des Denkens

  • Auch in wissenschaftlichen Bereichen wie Chemie und Botanik fördert eine systematische Nomenklatur den Fortschritt des Fachs
  • George Boole betonte, dass Sprache selbst ein Mittel des Denkens ist
  • Mathematische Notation ist ein typisches Beispiel für eine Sprache, die das Denken unterstützt, die Denklast reduziert und die Denkfähigkeit erweitert
  • A.N. Whitehead und Charles Babbage betonten die Bedeutung mathematischer Notation

Das Potenzial von Programmiersprachen als Werkzeuge des Denkens

  • Programmiersprachen haben die Stärken Allgemeingültigkeit und Klarheit
  • Mit dem Computer lassen sich Ideen erproben und klare Denkexperimente durchführen
  • Die meisten Programmiersprachen sind jedoch als Werkzeuge des Denkens schwächer als mathematische Notation
  • APL wurde als Notation entworfen, die das Denken unterstützt und auf Klarheit und Präzision abzielt

Wichtige Merkmale guter Notation

  • Leichte Darstellung von Problemen: Strukturen, die sich direkt aus einem Problem ableiten, sollten sich einfach ausdrücken lassen
  • Suggestivität: Die ausgedrückte Form sollte auf ähnliche oder erweiterte Probleme hinweisen
  • Unterordnung von Details: Sie sollte eine Struktur bieten, die komplexe Details vereinfacht und so das Denken unterstützt
  • Prägnanz: Mit minimalen Symbolen und Regeln sollte ein breites Ausdrucksspektrum möglich sein
  • Möglichkeit formaler Beweise: Die Notation sollte für formale Beweise und deduktives Schließen geeignet sein

Einführung in die grundlegenden Notationstechniken von APL

  • Array-basierte Strukturen wie Vektoren und Matrizen werden auf natürliche Weise verwendet
  • Funktionen und Operatoren werden automatisch elementweise auf Vektoren/Matrizen angewendet
  • Mit Operatoren wie Reduktion(/), Scan(\) und innerem Produkt(.) lassen sich Funktionskombinationen ausdrücken
  • Mit Grundsymbolen wie , , , +, ×, * lassen sich reichhaltige Ausdrücke bilden
  • Alle Funktionen folgen der Regel der Rechtsbindung, sodass sich natürliche Ausdrücke ohne Klammern schreiben lassen

Beispiele für Problemlösung und Förderung des Denkens

  • Mathematische Folgen wie Dreieckszahlen oder Fakultäten lassen sich mit einfachen Ausdrücken darstellen
  • Polynomdarstellung sowie Operationen wie Multiplikation und Differentiation lassen sich mit konsistenten Regeln knapp behandeln
  • Auch die Graphentheorie (Bäume, transitive Hülle, Spannbäume) lässt sich mit Array-Operationen klar ausdrücken
  • Das lässt sich auf verschiedene Bereiche wie Permutationen, Boolesche Algebra und Zahlensystemumwandlungen (Primfaktorzerlegung) erweitern

Formale Beweise und strukturiertes Denken

  • Da alle Operationen und Ausdrücke in klar ausführbarer Form dargestellt werden, ist eine automatische Verifikation durch den Computer möglich
  • Es werden verschiedene Beispiele formaler Beweise gezeigt, darunter mathematische Induktion, vollständige Suche und das Auflisten von Identitäten
  • Formale Beweise für Zerlegungsidentitäten von Reduktion und Scan sowie für Assoziativität und Distributivität innerer Produkte werden gegeben
  • Newtonsche symmetrische Funktionen sowie Formeln für Polynom-Multiplikation und Differentiation werden direkt bewiesen

Vergleich von APL mit traditioneller mathematischer Notation

  • APL bietet eine klare Definition von Funktionen, konsistente Array-Operationen und ein reichhaltiges Symbolsystem
  • Für alle Operationen gilt statt eines Prioritätsregelsystems die Regel der Ausführung von rechts nach links
  • Es reduziert die Komplexität der Verwendung mathematischer Symbole und unterstützt formale Manipulation
  • Die Syntax ist knapp und die Regeln konsistent, was sowohl für Einsteiger als auch für Fortgeschrittene vorteilhaft ist

Einführung und Lernen von Notation

  • Es wird betont, benötigte Notation ohne separate „Sprachlektionen“ natürlich im Kontext einzuführen
  • Neue Symbole werden in konkreten Problemsituationen intuitiv erlernt
  • Wichtiger als die Schwierigkeit der Notation selbst ist es, die vielfältigen Möglichkeiten und Erweiterbarkeit zu erkennen, die sie andeutet

Erweiterbarkeit und Vorschläge für APL

  • Vorschläge zur Erweiterung von Funktionen einschließlich der Verarbeitung komplexer Zahlen
  • Bedarf an Standardisierung einer Funktion für eindeutige Elemente (unique elements) sowie einer Zusammenfassungsfunktion (summary)
  • Durch allgemeinere Operatoren könnten zusätzliche Themen wie Vektoranalysis unterstützt werden
  • Ziel ist eine höhere Klarheit des Sprachdesigns und bessere Schlussfolgerungsfähigkeit

Gleichgewicht zwischen Effizienz und Klarheit

  • Empfohlen wird, zunächst eine klare und analysierbare Notation zu definieren und die Effizienz anschließend durch Optimierung zu erhöhen
  • Die Klärung des Algorithmus hilft später auch bei Optimierung und Compiler-Optimierung
  • In APL geschriebene Grundausdrücke können sowohl zur wissenschaftlichen Forschung als auch zu industriellen Anwendungen beitragen

1 Kommentare

 
GN⁺ 2025-04-26
Hacker-News-Kommentare
  • Notation bedeutet mehr, als einfach nur einen Ausdruck durch einen anderen zu ersetzen

    • Eine neue Notation lässt einen über ein Problem auf neue Weise nachdenken
    • Viele ungelöste Probleme könnten mit einer mächtigen Notation lösbar sein
    • Für Mathematiker oder Informatiker ist das offensichtlich, unter Linguisten oder Pädagogen ist es jedoch umstritten
    • Die Sapir-Whorf-Hypothese behauptet, dass Sprache das Denken bestimmt
    • Natürliche Sprache ist ein kulturelles Produkt, und in der Wissenschaft gilt es als tabu, Kultur mit Denken zu verknüpfen
    • Auch im Bildungswesen wird verhindert, dass Schüler eine Notation lernen, mit der sie Probleme wirklich verstehen können
  • Der Niedergang von APL lag am Aufkommen von Lotus 123 und MS Excel

    • APL hätte einen viel größeren Einfluss haben können
    • Die CS-Community konzentrierte sich auf Symbolics, KI und LISP
  • Die Sapir-Whorf-Hypothese deutet darauf hin, dass Sprache das Denken einschränken kann

    • Sprache und Denken könnten durch die Regeln sozialer Interaktion bestimmt werden
    • Musik kann Dinge ausdrücken, die sich auf andere Weise nicht ausdrücken lassen
  • Es wird an einem Projekt entwickelt, das APL verwendet

    • Die Konzepte von APL bilden eine Grundlage des Denkens
    • In einem Architekturprogramm wird NAATOT gelehrt
    • Der Traum ist, Studierende dazu zu bringen, ihr eigenes symbolisches Notationssystem zu entwickeln
  • Schade, dass eine Freeform-Notiz-App nicht fertiggestellt wurde

    • Es war eine Idee, die gut zu technischem Content in STEM-Fächern gepasst hätte
    • Als Beispiel werden alte Chemie-Notizen geteilt
  • Dies ist die Vorlesung, in der der Ausdruck "Werkzeuge des Denkens" erstmals verwendet wurde

    • Beim Lernen von APL wurde klar, dass man in einem Tweet viel Code unterbringen kann
    • Mathematische Notation ist nicht universell genug und kann unterschiedlich interpretiert werden
    • Wenn Notation von Visualisierung und der Ergonomie eines Problems getrennt wird, ist das kostspielig
    • Standardnotation kann kreatives Denken einschränken
  • Als verwandtes Material wird Iversons "Notation as a Tool of Thought" erwähnt