Physics Derivation Graph navigation Sign in

This page provides an overview of the Physics Derivation Graph project. No prior background on this project is assumed. General knowledge of Physics and Mathematics at the first year college level is assumed.

About the project

The Physics Derivation Graph is an effort to document knowledge about mathematical physics.
The project uses free and open source software (see dependencies) and the content is free and open source.
There is no intent to profit from the work. This content is free because it is intended to be accessible to anyone; cost should not be a barrier to access. The content is open source so that other researchers can build upon what exists.


Prior to the use of computers, knowledge about physics has been recorded in the form of notes, letters, journal articles, and text books. The content is typically composed of text, equations, and pictures. The presentation is in a linear sequence, though references are often made to link the current section with previous sections and later sections.

A recent addition to the toolset for capturing knowledge has been the use of linked webpages. A primary example of this is Wikipedia, an HTML-based encyclopedia. Webpages such as Wikipedia still use text, equations, and pictures, but feature a novel capability: hyperlinks. Hypertext Markup Language offers the ability to connect content to any other content. This enables non-linear exploration of content, in contrast to a textbook which is designed to be read sequentially.

The Physics Derivation Graph applies the concept of non-linear documentation to mathematical physics content. Instead of starting from linear text with references, this project starts with the network of mathematical relations. A more formal term for this network is a graph composed of nodes and edges. The graph associated with the PDG has two essential types of nodes: mathematical expressions and inference rules.

Every mathematical expression is connected to an inference rule by a directed edge. No two expressions are directly connected without an inference rule, and no two inference rules are connected directly. An example is provided in the next section to illustrate the concepts.

Example Derivation Step

Derivations in Physics are composed of steps. Each step involves one inference rule and one or more expressions. In this section a single step is described.

The following is what might be presented in a textbook or online article:
Frequency \(f\) and period \(T\) are related by \begin{equation} T\ f = 1 \label{eq:period_and_freq} \end{equation} Thus, frequency in terms of the period is \begin{equation} f = 1/T \label{eq:freq_is_inverse_period} \end{equation} The relation between equations \eqref{eq:period_and_freq} and \eqref{eq:freq_is_inverse_period} is that both sides of \eqref{eq:period_and_freq} were divided by \(T\).

In the above example, three terms used in the Physics Derivation Graph are demonstrated. There are two mathematical expressions: \eqref{eq:period_and_freq} and \eqref{eq:freq_is_inverse_period}. These expressions are related by an inference rule: "Divide both sides of first expression by a scalar value to yield the second expression." This inference rule takes an argument, referred to here as the feed, which in this example is \(T\). The relation of these terms is shown graphically below in figure 1:

Figure 1. A derivation step represented as a graph. The directed graph is comprised of an input expression (top blue circle), an output expressions (bottom blue circle), an inference rule (red trapazoid), and a feed (purple rectangle).

Graph content

The graph content takes the form of expressions (e.g., equations and inequalities), inference rules, and feeds. The expressions and feeds are built from symbols. In the example provided above, the symbols are period \(T\), frequency \(f\), equality \(=\), division \(/\), (implicity) multiplication, and the numeric value 1. The two expressions are \eqref{eq:period_and_freq} and \eqref{eq:freq_is_inverse_period}. An inference rule is defined here as an atomic transformation of one expression to another. The inference rule being applied implicitly between \eqref{eq:period_and_freq} and \eqref{eq:freq_is_inverse_period} is "Divide both sides of first equation by a value to yield the second equation." This inference rule takes an argument (the "feed"), which in this example is \(T\).

The Physics Derivation Graph is a collection of derivations, with each derivation composed of one or more steps. Each step has one inference rule. An inference rule (like "Divide both sides of first equation by a value to yield the second equation") may appear many times in the Physics Derivation Graph. Similarly, feed values (like \(f\)) can appear more than once. In contrast to inference rules and feeds, expression only appear once in the Physics Derivation Graph. This constraint is what leads to the connectedness of the graph. If multiple derivations reference \(1/T = f\), it is the same expression. Similarly, symbols are defined once for the entire Physics Derivation Graph.

Symbol re-use is common in science and is addressed in the PDG by the use of unique identifiers. For example, \(c\) is commonly used to represent the speed of light, but the same symbol is also used in the quadratic equation \begin{equation} a x^2+b x+c =0. \label{eq:quadratic} \end{equation} In \eqref{eq:quadratic}, \(c\) does not refer to the speed of light. This is distinguishable in the Physics Derivation Graph because the \(c\) referring to the speed of light has a different numeric identifier than the \(c\) in \eqref{eq:quadratic}.

Each time an expression, symbol, or inference rule is used in a step in the PDG, the unique identifier is referenced. The referencing of unique node identifiers is what enables construction of the graph. For example, if \eqref{eq:period_and_freq} is used in two distinct derivations, the same expression is referenced. Similarly, when the symbol \(T\) is used in any derivation, the associated numeric identifier refers to period. The symbol \(T\) used in another context would have a different unique numeric identifier. This referencing of unique expressions, symbols, and inference rules is done using a numeric identifier (alphanumeric for inference rules). This uniqueness of expressions, symbols, and inference rules is the core utility of the Physics Derivation Graph. This results in no duplication and fixed references (a static directed graph). The Physics Derivation Graph is designed to show one instance of each expression, but feeds and inference rules will have duplicates on the graph.


Expressions are mathematical statements composed of symbols. Each expression has three components: a left-hand side (LHS), a primary operator, and a right-hand side (RHS). The primary operator is usually equality \(=\) or an inequality. Each expression appears only once in the Physics Derivation Graph.

The list of expressions used in the Physics Derivation Graph is intended to be comprehensive.

Inference Rules

Inference rules operate on expressions to produce new expressions. In the example, the inference rule between expressions \eqref{eq:period_and_freq} and \eqref{eq:freq_is_inverse_period} is "Divide both sides of first expression by a scalar value to yield the second expression."

Inference rules are necessary to perform derivations in physics, but have received little attention as they are typically left to the field of logic and mathematics. Inference rules are distinct from axioms, in that there is not a fundemental set of inference rules. An inference rule in the context of the Physics Derivation Graph is a subcategory of logical connectives, similar to "and therefore" in language. Inference rules in the Physics Derivation Graph include both rules of inference and rules of replacement. (The difference between the two is explained as "Whereas a rule of inference is always applied to a whole logical expression, a rule of replacement may be applied to only a particular segment." [source].) Inference rules are mechanical manipulations applied to the Abstract Syntax Trees of expressions.

One result of an education in mathematics is building a library of inference rules, though that is not the common description in the field of math education. In Physics, knowing that it is valid to multiply both sides of an expression by one is assumed to have been learned in a math course. In the math course, the inference rule of multiplying both sides of an expression by one is taught with the common explanation that students need that inference rule to solve the relevant problems provided in the class. One of the consequences of constructing the Physics Derivation Graph is the enumeration of inference rules necessary for Physics.

Inference rules for the Physics Derivation Graph are intended to meet a threshold -- can the computer algebra system validate that the claim is true? There is a balance between inference rules that are simple for a CAS to validate versus but onerous in number for a human user versus challenging for a CAS but efficient for humans to apply. Also, there are variations to a given inference rule that can lead to the same outcome; for example "add X to both sides of an expression" is the reverse of "subtract X from both sides of an expression," so really only one of these is necessary (by flipping the sign of the feed value). Thus another route to too many inference rules is the tension between redundancy and ease-of-use.

Inference rule have a few interesting properties, like the reversal just described. An inference rule, effectively a directed edge on the graph of expressions, can always be undone. (Addition and subtraction, multiplication and division, powers and roots, matrix multiplication and inversion, trigfunctions and arctrigfunctions , exponents and logs, integration and differentiation) Some inference rules are self-reversing, like "substitute X for Y in an expression." Lastly, some inference rules have a left/right symmetry: for the inference rule "substitute LHS of expr1 into expr2" there is also the symmetric version "substitute RHS of expr1 into expr2." This comes from the symmetric property of equality.

The list of inference rules used in the Physics Derivation Graph is intended to short enough to fit in a person's memory while also being sufficiently narrow to be tested by Sympy.

Inference rules are useful for catching simple mistakes by CAS validation. Common mistakes include not carrying the negative symbol through a derivation or unintentionally dropping a term. The inference rules are atomic (simplest step possible) and first order -- they only relate nearest-neighbor expressions.

Reference to inference rules is made in Physics and Proof Theory by Paleo (2010); doi 10.1016/j.amc.2011.06.058


The inference rules take expressions as input and produce expressions as output. A second type of input for inference rules is the "feed." A feed is distinct from an expression. A feed may appear more than once in the Physics Derivation Graph. A feed does not have a primary oerator like equality or inequality.

Physics Topics

This requires breadth of coverage across all the domains of physics (\ie, classical mechanics, quantum mechanics, relativity, thermodynamics, statistical mechanics, etc). As a consequence, much of mathematics covered up to undergraduate level is likely to be required.

Use cases

The Physics Derivation Graph is expected to be useful to multiple audiences and users. Viewers of the content could include students in math and physics, and analysis of the content could help shape curriculum. Contributors to the Physics Derivation Graph would be scientists who add new developments based on their work.

Education in Math and Physics

Currently students in Math and Physics are taught content using lectures, textbooks, and homework. The method of presentation varies, but the overarching story is often historically driven. Algebra is old, calculus is newer, and topology is recent. Classical mechanics is old, thermodynamics is newer, and quantum mechanics is recent. When teaching, these subjects are taught by building on previous content -- calculus leverages algebra, thermodynamics leverages classical mechanics.

How could the Physics Derivation Graph benefit teachers?
For physics teachers, this project could address questions like, "how much of what is known have I learned?" and "what else is there to learn?"
For math students, this project could address questions like, "when would I apply what I am learning?" and "what is this useful for?"

How could the Physics Derivation Graph benefit students?
For physics students, this project could address questions like, "how much of what is known have I learned?" and "what else is there to learn?"
For math students, this project could address questions like, "when would I apply what I am learning?" and "what is this useful for?"


Documenting Scientific Progress in Articles

The Physics Derivation Graph provides a very detailed explanation of how complex derivations are carried out. It also explicitly enumerates the assumptions necessary to perform derivations. Imposing these requirements on researchers would require clear and significant benefit to both the individual researchers and the community.

Peer-reviewed journal articles are one of the current methods of demonstrating value in the scientific community. Conciseness is a feature of this writing style, and the mathematics presented is correspondingly sparse -- just sufficient to covey the author's intention. This results in a burden on the reader of the article, either to take the author's claims on faith, or to rederive the mathematical expressions. A reader's derivation is complicated by implicit assumptions made by the author and unintentional mistakes in calculation.

With journals allowing supplemental materials for articles, calculations could be included. However, it is not clear what the appropriate level of detail is in supplied calculations. The intention is to be able to reproduce the work, but validation via computer.


Education Curriculum Design

A less direct use case but potentially important impact of the Physics Derivation Graph is on understanding the relevance of what is being taught in the education system. Math classes essentially teach a set of inference rules, and physics is the application of those inference rules. The Physics Derivation Graph could answer two important questions: "When am I going to use this inference rule?" and "What is the relative importance of this math skill?"

The focus for students in mathematics classes is on the technique, e.g., "integrate both sides with respect to \(Y\)," and application is necessarily of secondary importance. Physics students are expected to know the mathematical techniques and teaching is focused on application. The Physics Derivation Graph can assist both scenarios. The student in a math class can see where the inference rules they learn are applied in Physics. The student in the Physics class can see which inference rules are required in their field.

Each inference rule seems equally important, since it currently is not known what the frequency of use for that inference rule is. In the Physics Derivation Graph, it is simple to count utilization of inference rules. Thus, we are able to measure the ratio of how often "multiply both sides by X" is used relative to "integrate both sides with respect to \(Y\)."