diff options
Diffstat (limited to 'journal')
-rw-r--r-- | journal/19feb2009.html | 3 | ||||
-rw-r--r-- | journal/26feb2009-tegmark-toe.gif | bin | 0 -> 20661 bytes | |||
-rw-r--r-- | journal/26feb2009.html | 106 |
3 files changed, 108 insertions, 1 deletions
diff --git a/journal/19feb2009.html b/journal/19feb2009.html index 54183f6..5e60292 100644 --- a/journal/19feb2009.html +++ b/journal/19feb2009.html @@ -45,7 +45,8 @@ still looks fun! Grafted from <a href="http://readscheme.org">readscheme.org</a> </ul> <br /><br /> -<a href="16feb2009.html"><i>(previous entry)</i></a> +<a href="16feb2009.html"><i>(previous entry)</i></a> - +<a href="26feb2009.html"><i>(next entry)</i></a> <!-- ================================================================ --> <!-- ================================================================ --> diff --git a/journal/26feb2009-tegmark-toe.gif b/journal/26feb2009-tegmark-toe.gif Binary files differnew file mode 100644 index 0000000..2e80aa6 --- /dev/null +++ b/journal/26feb2009-tegmark-toe.gif diff --git a/journal/26feb2009.html b/journal/26feb2009.html new file mode 100644 index 0000000..052534d --- /dev/null +++ b/journal/26feb2009.html @@ -0,0 +1,106 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head><title>bnewbold thesis</title></head> +<body style="margin: 25px; font-family: helvetica;"> +<h1 style="border-bottom: 2px solid;"> +Journal: Feb 26, 2009</h1> +<i>Bryan Newbold, <a href="mailto:bnewbold@mit.edu">bnewbold@mit.edu</a></i><br /> +<i><a href="http://web.mit.edu/bnewbold/thesis/"> +http://web.mit.edu/bnewbold/thesis/</a></i> +<br /><p /> +<!-- ================================================================ --> +<!-- ================================================================ --> + +I've started writing some things up, look in the <a href="../draft/">draft</a> +folder. Very rough, just putting down ideas to see what structure emerges. + +<h3>Type Hierarchies</h3> +The <b>sage</b> math rough documentation on coercion and arithmetic is at +<a href="http://www.sagemath.org/doc/prog/node22.html"> +http://www.sagemath.org/doc/prog/node22.html</a>. It mostly uses the python +object system with a variety of Fields to handle arbitrary precision numerical +data (RealField and ComplexField can be specified by precision). +<p /> +<b>AXIOM</b> has great graphs of their huge algebraic hierarchy (warning: large +slow svg files!): <a href="http://axiom-developer.org/axiom-website/dotabb.html"> +abreviated category and domain</a>, +<a href="http://axiom-developer.org/axiom-website/hp.svg">everything?</a>. +<br/> +Axiom uses strict type checking (everything gets compiled down?); every type is +a category which allows for checking of properties and mathematical +correctness. The interpreter guesses what type/category user input should be. +There is a good overview <a +href="http://axiom-developer.org/axiom-website/hyperdoc/axbook/section-0.2.xhtml">here</a>. +To paraphrase: every object is of a single type called it's domain ("domain of +computation", eg "String", "Float". Domains themselves have a type called a +Category (disclaimer: I don't know anything about category theory). The +Categories for hierarchies ("directed acyclic graphs"), eg: + +<pre> +SetCategory +---- Ring ---- IntegralDomain ---- Field + | + +---- Finite ---+ + | \ + +---- OrderedSet -----+ OrderedFinite +</pre> + +Packages are special domains which just have associated polymorphic operators +(so they are generic on inputs?). +<br />From the documentation: +"Roman numerals are also available for those special occasions." +<br />Interesting stuff! The main book explains a lot about how types are +coerced together for operations etc. + +<p /> +<b>Singular</b> has a list of types +<a href="http://www.singular.uni-kl.de/Manual/latest/sing_67.htm#SEC107">here +</a>; it includes: +bigint def ideal int intmat intvec link +list map matrix module number package poly +proc qring resolution ring string vector. + +<p /> +<b>Cadabra</b> is an interactive C++ system designed specifically for tensor +manipulation in physics (usually HEP?). It describes some of it's important +features as: +<ul> +<li />Built-in understanding of dummy indices and dummy symbols, including +their automatic relabelling when necessary. +<li />Powerful algorithms for canonicalisation of objects with index +symmetries, both mono-term and multi-term. +<li />A new way to deal with products of non-commuting objects, enabling a +notation which is identical to standard physicist's notation (i.e. no need for +special non- commuting product operators). +<li />A flexible way to associate meaning ("type information") to tensors by +attaching them to "properties". +</ul> + +<p /> +With respect to some sort of absolute mathematical type hierarchy, one of my +favorite papers by Max Tegmark ("The Mathematical Universe"): +<br /> +<img src="26feb2009-tegmark-toe.gif" /> + +<h3>Tools Needed</h3> +Basic multivariable calculus tools to be extended for differential geometry: +<dl> + <dt />integral + <dt />derivative + <dt />partial derivative + <dt />curl + <dt />divergence + <dt />taylor expansion +</dl> + +Eg, <code>(taylor function variable point number)</code> would give a list +of the first *number* terms of the taylor expansion of *function* by +*variable* around *point*. + +<br /><br /> +<a href="19feb2009.html"><i>(previous entry)</i></a> + +<!-- ================================================================ --> +<!-- ================================================================ --> +</body> +</html> |