computer-science   7330
Unification - Eli Bendersky's website
In logic and computer science, unification is a process of automatically solving equations between symbolic terms. Unification has several interesting applications, notably in logic programming and type inference.
compiler  computer-science  type-system  pattern-matching
9 hours ago by vipom
An Introduction to the Conjugate Gradient Method Without the Agonizing Pain
The Conjugate Gradient Method is the most prominent iterative method for solving sparse systems of linear equations.
Unfortunately, many textbook treatments of the topic are written with neither illustrations nor intuition, and their
victims can be found to this day babbling senselessly in the corners of dusty libraries. For this reason, a deep,
geometric understanding of the method has been reserved for the elite brilliant few who have painstakingly decoded
the mumblings of their forebears. Nevertheless,the Conjugate Gradient Method is a composite ofsimple, elegantideas
that almost anyone can understand. Of course, a reader as intelligent as yourself will learn them almost effortlessly.
The idea of quadratic forms is introduced and used to derive the methods of Steepest Descent, Conjugate Directions,
and Conjugate Gradients. Eigenvectors are explained and used to examine the convergence of the Jacobi Method,
Method. I have taken pains to make this article easy to read. Sixty-six illustrations are provided. Dense prose is
avoided. Concepts are explained in several different ways. Most equations are coupled with an intuitive interpretation.
linear-algebra  academia  papers  cmu  computer-science  matrix-algebra  math
10 hours ago by amsone
Surprisingly Turing-Complete - Gwern.net
Includes "how many computers are in your computer?"
computer-science  security  insightful
9 days ago by whyitsjeff
Shtetl-Optimized » Blog Archive » Lecture notes! Intro to Quantum Information Science
In Spring 2017, I taught a new undergraduate course at UT Austin, entitled Introduction to Quantum Information Science.  There were about 60 students, mostly CS but also with strong representation from physics, math, and electrical engineering.  One student, Ewin Tang, made a previous appearance on this blog.  But today belongs to another student, Paulo Alves, who took it upon himself to make detailed notes of all of my lectures.  Using Paulo’s notes as a starting point, and after a full year of procrastination and delays, I’m now happy to release the full lecture notes for the course.  Among other things, I’ll be using these notes when I teach the course a second time, starting … holy smokes … this Wednesday.
15 days ago by Vaguery
[1805.03374] A Proposal for Loop-Transformation Pragmas
Pragmas for loop transformations, such as unrolling, are implemented in most mainstream compilers. They are used by application programmers because of their ease of use compared to directly modifying the source code of the relevant loops. We propose additional pragmas for common loop transformations that go far beyond the transformations today's compilers provide and should make most source rewriting for the sake of loop optimization unnecessary. To encourage compilers to implement these pragmas, and to avoid a diversity of incompatible syntaxes, we would like to spark a discussion about an inclusion to the OpenMP standard.
computer-science  compilers  rewriting-systems  refactoring  rather-interesting  to-understand  computational-complexity  optimization
16 days ago by Vaguery
fogus: Soup
Pseudo-random ramblings from Fogus.