English
Related papers

Related papers: Discrete Math with Programming: A Principled Appro…

200 papers

Processing programs as data is one of the successes of functional and logic programming. Higher-order functions, as program-processing programs are called in functional programming, and meta-programs, as they are called in logic…

Logic in Computer Science · Computer Science 2020-04-21 François Bry

Procedural computer languages have long been used in many aspects of mathematics pedagogy. In this work, we examine the use of Prolog, a declarative language for the same purpose. We find the facts+rules aspect of Prolog to be a novel…

Computers and Society · Computer Science 2021-08-24 Tom Bensky

Logic programming is a flexible programming paradigm due to the use of predicates without a fixed data flow. To extend logic languages with the compact notation of functional programming, there are various proposals to map evaluable…

Programming Languages · Computer Science 2022-05-17 Michael Hanus

Artificial intelligence has recently experienced remarkable advances, fueled by large models, vast datasets, accelerated hardware, and, last but not least, the transformative power of differentiable programming. This new programming…

Machine Learning · Computer Science 2025-06-25 Mathieu Blondel , Vincent Roulet

We commonly think of mathematics as bringing precision to application domains, but its relationship with computer science is more complex. This experience report on the use of Racket and Haskell to teach a required first university CS…

Programming Languages · Computer Science 2013-01-23 Prabhakar Ragde

The differentiable programming paradigm is a cornerstone of modern scientific computing. It refers to numerical methods for computing the gradient of a numerical model's output. Many scientific models are based on differential equations,…

Classical mathematical models used in the semantics of programming languages and computation rely on idealized abstractions such as infinite-precision real numbers, unbounded sets, and unrestricted computation. In contrast, concrete…

Logic in Computer Science · Computer Science 2026-01-09 Lian Wen

Recent developments in computer programming and in mathematics suggest that there is a strong case for a new way of introducing programming to enhance the learning of school mathematics. The article describes a collaboration of mathematics…

History and Overview · Mathematics 2022-03-30 Ian Benson , Jim Darby , Neil MacDonald , Jesse Sigal

Higher-order logic programming is an interesting extension of traditional logic programming that allows predicates to appear as arguments and variables to be used where predicates typically occur. Higher-order characteristics are indeed…

Programming Languages · Computer Science 2018-12-04 Antonis Troumpoukis , Angelos Charalambidis

Probabilistic programming languages (PPLs) are an expressive means of representing and reasoning about probabilistic models. The computational challenge of probabilistic inference remains the primary roadblock for applying PPLs in practice.…

Programming Languages · Computer Science 2020-10-19 Steven Holtzen , Guy Van den Broeck , Todd Millstein

Writing and argumentation are critical to both professional physics and physics education. However, the skill of making an extended argument in writing is often overlooked in physics classrooms, apart from certain practices like lab…

Physics Education · Physics 2020-06-19 Tor Ole B. Odden , John Burk

Combinatorics is a fundamental mathematical discipline as well as an essential component of many mathematical areas, and its study has experienced an impressive growth in recent years. One of the main reasons for this growth is the tight…

Combinatorics · Mathematics 2007-05-23 Noga Alon

In David Schmidt's PhD work he explored the use of denotational semantics as a programming language. It was part of an effort to not only treat formal semantics as specifications but also as interpreters and input to compiler generators.…

Programming Languages · Computer Science 2013-09-23 Mads Rosendahl

Probabilistic programming is considered as a framework, in which basic components of cognitive architectures can be represented in unified and elegant fashion. At the same time, necessity of adopting some component of cognitive…

Artificial Intelligence · Computer Science 2016-05-05 Alexey Potapov

A re-construction of the fundamentals of programming as a small mathematical theory (PRISM) based on elementary set theory. Highlights: $\bullet$ Zero axioms. No properties are assumed, all are proved (from standard set theory). $\bullet$ A…

Software Engineering · Computer Science 2025-02-28 Bertrand Meyer , Reto Weber

The notion of a real-valued function is central to mathematics, computer science, and many other scientific fields. Despite this importance, there are hardly any positive results on decision procedures for predicate logical theories that…

Logic in Computer Science · Computer Science 2025-04-30 Stefan Ratschan

Disco is a pure, strict, statically typed functional programming language designed to be used in the setting of a discrete mathematics course. The goals of the language are to introduce students to functional programming concepts early, and…

Programming Languages · Computer Science 2023-08-15 Brent A. Yorgey

With the technology of the time, Kowalski's seminal 1974 paper {\em Predicate Logic as a Programming Language} was a breakthrough for the use of logic in computer science. It introduced two fundamental ideas: on the declarative side, the…

Logic in Computer Science · Computer Science 2018-03-14 Broes De Cat , Bart Bogaerts , Maurice Bruynooghe , Gerda Janssens , Marc Denecker

Differential privacy is a mathematical framework for developing statistical computations with provable guarantees of privacy and accuracy. In contrast to the privacy component of differential privacy, which has a clear mathematical and…

Cryptography and Security · Computer Science 2020-11-13 Gilles Barthe , Rohit Chadha , Paul Krogmeier , A. Prasad Sistla , Mahesh Viswanathan

Computer programs may go wrong due to exceptional behaviors, out-of-bound array accesses, or simply coding errors. Thus, they cannot be blindly trusted. Scientific computing programs make no exception in that respect, and even bring…