surreal-numbers/.git
2 years agoInitial commit of Chapter 4 notes. Just a review, import of proof outlines, and updat... master origin/HEAD origin/master
Aaron Taylor [Tue, 18 May 2021 01:43:10 +0000 (18:43 -0700)]
Initial commit of Chapter 4 notes. Just a review, import of proof outlines, and update of rhetoric. Proofs tomorrow.

2 years agoChanged the way I label chapter headers in my notes.
Aaron Taylor [Tue, 18 May 2021 01:42:48 +0000 (18:42 -0700)]
Changed the way I label chapter headers in my notes.

2 years ago'go fmt' pass on number breeding program.
Aaron Taylor [Sun, 16 May 2021 01:40:08 +0000 (18:40 -0700)]
'go fmt' pass on number breeding program.

2 years agoModified heap profiling to only dump at end of program, not after every generation.
Aaron Taylor [Sun, 16 May 2021 01:07:13 +0000 (18:07 -0700)]
Modified heap profiling to only dump at end of program, not after every generation.

2 years agoModified permuteExistingNumbers(), moving the isValidSurrealNumber() check into the...
Aaron Taylor [Sat, 15 May 2021 22:43:01 +0000 (15:43 -0700)]
Modified permuteExistingNumbers(), moving the isValidSurrealNumber() check into the symbol-permutation loop.

Based on profiling, such a large quantity of invalid numbers was being
generated that data operations were sucking up a significant portion of total
program runtime.

Benchmarking command:
    time ./ch1-breeding-numbers -generations 13 -silent
    go tool pprof ch1-breeding-numbers 13gen-memprofile-gen12.mprof
        top25

Before:
    38.303u 2.233s 0:23.41 173.1%   0+0k 40+62io 354pf+0w
    Showing nodes accounting for 2.29GB, 100% of 2.29GB total

After:
    23.435u 0.887s 0:19.54 124.4%   0+0k 40+52io 347pf+0w
    Showing nodes accounting for 1.12GB, 99.55% of 1.13GB total

2 years agoModified permuteExistingNumbers() to pre-allocate sufficiently large slice for all...
Aaron Taylor [Sat, 15 May 2021 22:15:08 +0000 (15:15 -0700)]
Modified permuteExistingNumbers() to pre-allocate sufficiently large slice for all results.

Based on profiling, significant time was spent in growSlice() and memMove() as
a result of the per-number slice append(). Consolidating the allocations resulted
in significant speed and memory usage improvements.

Benchmarking command:
    time ./ch1-breeding-numbers -generations 13 -silent
    go tool pprof ch1-breeding-numbers 13gen-memprofile-gen12.mprof
        top25

Before:
    71.978u 3.726s 0:31.79 238.0%   0+0k 40+75io 353pf+0w
    Showing nodes accounting for 3.70GB, 100% of 3.70GB total

After:
    38.303u 2.233s 0:23.41 173.1%   0+0k 40+62io 354pf+0w
    Showing nodes accounting for 2.29GB, 100% of 2.29GB total

2 years agoUpdated getIndex() for 650% speed improvement in number breeding program.
Aaron Taylor [Sat, 15 May 2021 10:40:13 +0000 (03:40 -0700)]
Updated getIndex() for 650% speed improvement in number breeding program.

Added 'value' field to number based on conjectures related to addition. See my
chapter 2 and 3 notes. This allowed a binary search of the universe rather than
a linear search.

Benchmarking command:
    time ./ch1-breeding-numbers -generations 13 -silent

Before:
    382.156u 3.945s 5:41.96 112.9%  0+0k 40+66io 7pf+0w

After:
    59.828u 3.247s 0:30.70 205.4%   0+0k 1+0io 0pf+0w

2 years agoAdded basic CPU and heap profiling to Chapter 1 "Breeding Numbers" program.
Aaron Taylor [Sat, 15 May 2021 09:50:02 +0000 (02:50 -0700)]
Added basic CPU and heap profiling to Chapter 1 "Breeding Numbers" program.

2 years agoAdded first notes related to Chapter 3. Trying to define addition.
Aaron Taylor [Sat, 15 May 2021 04:23:06 +0000 (21:23 -0700)]
Added first notes related to Chapter 3. Trying to define addition.

2 years agoAdded notes related to Chapter 2.
Aaron Taylor [Wed, 12 May 2021 08:19:31 +0000 (01:19 -0700)]
Added notes related to Chapter 2.

2 years agoAdded some status-update output to surreal number breeding program. Given the
Aaron Taylor [Tue, 11 May 2021 19:49:50 +0000 (12:49 -0700)]
Added some status-update output to surreal number breeding program. Given the
long runtimes, it's useful to see how far the program has progressed.

2 years agoAdded main README for project.
Aaron Taylor [Sun, 9 May 2021 11:35:16 +0000 (04:35 -0700)]
Added main README for project.

2 years agoChanged usage->instructions in README header.
Aaron Taylor [Sun, 9 May 2021 11:34:06 +0000 (04:34 -0700)]
Changed usage->instructions in README header.

2 years agoMinor spacing changes to README from previous commit.
Aaron Taylor [Sun, 9 May 2021 11:31:32 +0000 (04:31 -0700)]
Minor spacing changes to README from previous commit.

2 years agoAdded README for ch1-breeding-numbers experiment.
Aaron Taylor [Sun, 9 May 2021 11:26:16 +0000 (04:26 -0700)]
Added README for ch1-breeding-numbers experiment.

2 years agoFinal commit of 'initial version' of program for breeding surreal numbers. Program...
Aaron Taylor [Sun, 9 May 2021 11:16:05 +0000 (04:16 -0700)]
Final commit of 'initial version' of program for breeding surreal numbers. Program compiles and runs. Data output starts to become significant around generation 12-ish.

2 years agoMore updates to Chapter 1 notes exploring order and uniqueness.
Aaron Taylor [Sat, 8 May 2021 08:53:32 +0000 (01:53 -0700)]
More updates to Chapter 1 notes exploring order and uniqueness.

2 years agoSignificant updates to Chapter 1 notes exploring order and uniqueness.
Aaron Taylor [Fri, 7 May 2021 10:02:31 +0000 (03:02 -0700)]
Significant updates to Chapter 1 notes exploring order and uniqueness.

2 years agoMinor updates to LaTeX note template.
Aaron Taylor [Fri, 7 May 2021 10:02:10 +0000 (03:02 -0700)]
Minor updates to LaTeX note template.

2 years agoAdding some more thoughts to my chapter-1 notes/speculations.
Aaron Taylor [Wed, 5 May 2021 10:57:57 +0000 (03:57 -0700)]
Adding some more thoughts to my chapter-1 notes/speculations.

2 years agoIn chapter-1 experiments, continued writing a program to breed numbers.
Aaron Taylor [Wed, 5 May 2021 10:17:13 +0000 (03:17 -0700)]
In chapter-1 experiments, continued writing a program to breed numbers.
Still non-functional.

2 years agoFixed typo in chapter 1 notes where numbers are similar.
Aaron Taylor [Wed, 5 May 2021 05:08:41 +0000 (22:08 -0700)]
Fixed typo in chapter 1 notes where numbers are similar.

2 years agoCreated basic data structures and methods for dealing with a collection of surreal...
Aaron Taylor [Wed, 5 May 2021 04:58:52 +0000 (21:58 -0700)]
Created basic data structures and methods for dealing with a collection of surreal numbers.

2 years agoAdded some more notes related to Chapter 1. Mostly misc explorations of the
Aaron Taylor [Tue, 4 May 2021 01:24:45 +0000 (18:24 -0700)]
Added some more notes related to Chapter 1. Mostly misc explorations of the
first two axioms defining surreal number creation and comparison.

2 years agoInitial commit of some notes related to chapter 1.
Aaron Taylor [Mon, 3 May 2021 06:24:31 +0000 (23:24 -0700)]
Initial commit of some notes related to chapter 1.

2 years agoAdded framework for note-taking with LaTeX.
Aaron Taylor [Mon, 3 May 2021 05:06:28 +0000 (22:06 -0700)]
Added framework for note-taking with LaTeX.

2 years agoAdded framework for experimenting using Go.
Aaron Taylor [Mon, 3 May 2021 03:38:24 +0000 (20:38 -0700)]
Added framework for experimenting using Go.

2 years agoInitial commit, just a license.
Aaron Taylor [Mon, 3 May 2021 03:08:29 +0000 (20:08 -0700)]
Initial commit, just a license.