Saturday, December 31, 2005

Leap Days

How stable is the length of the year? (Motions of Jupiter, Mass loss of the sun, Sungrazing comet impacts, Gravity waves passing through the solar system...)

four stars in a plane

Find four stars in as close to a common plane as possible.

Friday, December 30, 2005

mach banding mandelbrot

getting rid of mach banding in mandelbrot set fractal images looks to be hard. somehow use the speed of exit, except that depends on orbit period.

prefixed C types

One can consider prefixed types such as "unsigned long long int" as a single identifier with spaces in them.

BitTorrent trackerless operation

Details on how BitTorrent trackerless works are hard to find by web search. Here is the file TRACKERLESS.txt in the BitTorrent Source. Much of the adventure takes place inside the khashmir subdirectory, for example findNodes in ktable.py.

Thursday, December 29, 2005

Image to PostScript

The world wants a jp2 jpeg2000 decoder written in Postscript. Even today, pnmtops could be greatly improved, for example using Postscript Level 2's built-in LZW and DCT support. (Newest netpbm has -flate option.)

PostScript Utilities (jpeg2ps)
jpeg2ps

Fun with the Cauchy Distribution

The probability distribution with undefined mean and infinite variance. It can be physically generated by a random angle pendulum, sampling the tangent function. Is it real life, where the outliers dominate so much that the central limit theorem does not hold? Do the height of the peaks of the Riemann zeta function along the critical line follow this distribution? The size of the deltas of the stock market?

Index of /~kenta/three/cauchy

contfrac compression

Is there an optimal, useful, compression of a simple continued fraction expansion? Not packing it back into binary.

--

Mobile Email from a Cingular Wireless Customer http://www.cingular.com

Sentence terminator

Does Unicode have a semantic sentence terminator mark that perhaps might be displayed nbsp? Solves 2spaces, period probs.

Answer: need not even go to Unicode, there are a bunch of "unused" ASCII control characters. Even for invisible parentheses.

Wednesday, December 28, 2005

function call key-value parameters

f [key1<-value1, key2<-value2] where f :: type1 -> type2 -> typef

arguments can be in any order

auto curry from any missing key: f [key2<-value2] is a function type1 -> typef

auto detection of type: f [value1] can omit key1 if the only parameter of type1.

Sunday, December 25, 2005

tagged types

lightweight version of struct encapsulation and deriving operators and casts.

Are we comparing apples to oranges in our code? Add tags:

int<Apple> apples; int<Orange> oranges;

Insert the tag at the root (where apples are first used) and automatically force all ints to be polymorphic int<a>

Anything that works for an int works for an int<foo>, but we can perform deep queries about what kinds of casts and derived functions and operators are occuring, and where polymorphism is being disambiguated.

cronjob mail script

Because cron jobs automatically send mail if there is standard output, it is absurdly easy to create a crontab script that sends mail (albeit with somewhat ugly Subject header). Just set the MAILTO variable appropriately and have the command write to stdout if mail should be sent.

For example, a script to test if a file has changed: diff file.bak file ; cp file file.bak

One can mail one's mobile phone to be paged with a text message, etc.

Saturday, December 24, 2005

mailing list digest spam

Mailman wishlist: While normal messages get through immediately, messages tagged as spam, or non-member submissions not approved by moderator or CAPTCHA, get digested for once a week.

Emacs multicolumn

I wish there were a way to have emacs do columns so that a single buffer spans two (or more) columns, wrapping text from the bottom of one column to the top of the next.

And web browsers, too.

XML recursive hashtable

XML is a hybrid of a recursive hashtable (attribute to elements are keys) and Lisp-like recursive lists. <ELEMENT>foo bar</ELEMENT> is <ELEMENT list-content="foo bar"/>, where list-content is allowed to have recursive XML elements inside it. The purity of Lisp leads to ugly position-dependent parameters. When does position inherently matter? Anything ordered, of course...

There is a fundamental tension between ordered lists and unordered key-value(s) pairs as the two True Data Structures. (There's set, too.)

UI tricks

"Backspace" is navigate-page-backward is the best thing ever. (My keyboard has a full size backspace key.)

The latest KDE supports application menu along the top of the screen.

encrypted sendmail

How difficult would it be to encrypt the SMTP link between two sendmail servers on the internet (especially over the backbone) preferably with a cryptographic protocol with perfect forward secrecy? It seems like a straightforward application of Diffie-Hellman. Does the NSA have the ability to introduce man-in-the-middle attacks on the backbone? (Well, yes.)

Nevertheless, some crypto is probably better than none.

Friday, December 23, 2005

Verisign M-4 factored

Let M be the modulus of VeriSign Class 3 Public Primary Certification Authority public key, valid until the year 2028. While factoring M is expected to be hard, M-4 has a relatively smooth factorization:

M-4 = 3 * 3 * 193 * 331 * 6128405401 * 600270585077 * 740739825201997 * 3767960522848201931 * 1763988934035706139627 * 59813208105314032027291 * 3246151553918103368085998272489 * 276773842952611154114920239220722631 * 26429454638260922608191475868189426039 * 3894223443367528241282778866698497025018177 * 2455048868245492012151874489544364890868369330214795356411

The original number has 309 digits. The largest factor of M-4 has only 58 digits. While "relatively smooth" for 309-digit numbers, it is still not smooth enough to aid in the factorization of M itself. Furthermore, I do not know if the special number field sieve can deal with offsets that are not +1 or -1, (namely -4).

Thursday, December 22, 2005

ocr hex

What are the 16 (or 17 for EOF) least confusable characters for optical character recognition of hexadecimal?

PARC Solutions: DataGlyphs

The world needs some good barcode (or 2D barcode) reading software. PDF417. Image-in, data out, solving orientation and lens distortion along the way, and finding the barcode in the image.

Wednesday, December 21, 2005

Atlantic Tsunami

Steven N. Ward, Simon Day, "Cumbre Vieja Volcano -- Potential collapse and tsunami at La Palma, Canary Islands" Geophysical Research Letters 28: 3397–3400, 2001.

Speex DTX denoise

The trick to get speex to "trigger" discontinuous transmission is to record 16-bit and use the --denoise flag. 8-bit recording yields too much quantization noise, so ironically one first records at a higher bitrate to get it to compress to a lower bitrate. Naive use of 16-bit recording (without denoising) does not compress so well.

speexenc -V --vbr --dtx --quality 1 --denoise foo.wav foo.spx

Central Limit Theorem (fine print)

Central Limit Theorem (fine print)
There exist distributions that don't have means, for example 1/(pi*(1+x*x)).

[OpenAFS] AFS/UNIX attributes, home directories in AFS

[OpenAFS] AFS/UNIX attributes, home directories in AFS (Russ Allbery rra at stanford): Allows the AFS l bit not to be present in the shadow home directory.

Tuesday, December 20, 2005

time functions

time(), gettimeofday()
    |
    |         gmtime,
    v       localtime             asctime, strftime
time_t (int) --------> struct tm -----------------> string
    |        <--------           <----------------     ^
    |         mktime             strptime, getdate     |
    |                                                  |
    \--------------------------------------------------/
                      ctime

Friday, December 16, 2005

4213988843

4213988843 is a factor of 1+RSA1024

Reduction of Natural to Elliptic

Is there a proof stating that taking Discrete Logs on Elliptic Curves is at least as hard as on Natural Numbers GF(p)? If so, we can switch over from 1024-bit regular cryptosystems to 1024-bit ECC cryptosystems (almost definitely overkill) with little Fear, Uncertainty, or Doubt.

Yes, there is a performance penalty, but computers are getting faster all the time.

Fusion vs. Geothermal

Are the challenges for widespread commercial use of geothermal electricity production greater than for fusion power?

Heat gradient over depth less steep than the gravitational potential energy change of a heat carrier?

Wednesday, December 14, 2005

Baseball tools

Fielding: place yourself in the correct spot; time to react to a hit ball; speed to field the ball; decision to throw where; throwing velocity; throwing accuracy; assists and backing up: 7 items

Hitting: for power; for average; for advancing the baserunner; for avoiding the double play: 4 items

Baserunning: steals; decision to "stretch": 2 items

Pitching: to relieve the bullpen in those 21-run or 21-inning games: 1 item

Other: not getting ejected: 1 item

15 tools, total

11 Fahrenheit

11.42857 Fahreheit = -11.42857 Celsius

(11 + 3/7 to be exact)

Tuesday, December 13, 2005

Greatest Theorems

Free Market is Efficient

Arrow's Theorem / Gibbard Satterthwaite Theorem

Central Limit Theorem, also Chebyshev Inequality

Market Portfolio is optimal (CAPM)

Taylor Series Expansion can approximate an arbitrary function to arbitrary accuracy

Fourier Transform is invertible, and can be calculated rapidly

Geometric Series converges, and can be calculated in closed form

Nash Equilibrium exists

Satisfiability is NP-complete (Cook, Karp)

Turing Machine is in general undecidable (Rice's Theorem)

Godel's Incompleteness Theorem

Fundamental Theorem of Algebra (complex numbers suffice)

Fundamental Theorem of Calculus

This list is biased toward economic theorems because they probably have the greatest real-world impact.

Each theorem seems surprising, which is what makes it great.

They also seem to state a grand truth about the world.

Random-access tar

I wish there were a common archiving utility that is functionally equivalent to tar, except with random access (with as similar as possible command-line interface as tar).

This can probably be done with scripts that mount loopback filesystems, but unfortunately requires root access.

Compression would be nice.

Monday, December 12, 2005

InputStream if;

Imagine a language that always allows the programmer to declare a identifier to be a reserved keyword; the syntactic feature using that reserved word becomes unavailable in the static scope of the identifier. On one hand, this is an elegant solution to the problem of future versions of a language making a currently valid identifier into a future reserved word (for example with "enum" in Java). On the other hand, the grammar is no longer context-free.

Friday, December 09, 2005

Spoken notes with spoken tags

It seems that with only relatively rudimentary speech recognition, one could create a sophisticated collector and organizer of voice memos, tagged with spoken tags and timestamps, and possibly GPS. One could even interface with a calendar.

Tuesday, December 06, 2005

Spooky Action at a Distance

Phys. Rev. 47, 777 (1935): Einstein et al. - Can Quantum-Mechanical Description of Physical Reality Be Considered Complete? In this article Einstein, Podolsky, and Rosen argue that QM in not complete. The phrase "spooky action at a distance" does not appear in the article. What is the citation of Einstein first using the phrase?

Monday, December 05, 2005

There is no intelligent life

Star Trek's "Borg" and Stargate's "Goa'uld" summarize a famous argument why there is no (other) intelligent life in this galaxy: if there were, they would have overrun the galaxy by now and their existence would be completely obvious to us. Assuming a civilization expands on the average taking a millenium to travel just one light year, it would only take 100 million years to conquer the galaxy (100,000 light-years diameter), which is but an eyeblink in astronomic time.

Saturday, December 03, 2005

Red Sox conclave

They should emit white smoke from Fenway Park when the new General Manager is finally chosen.

--

Mobile Email from a Cingular Wireless Customer http://www.cingular.com

Predictive

Predictive typing but you can input letters in any order. Helps resolve suffixes quicker, eg, skip to "zg" after "ox" in "oxidizing". Needs a control input to mark the end of the prefix, e.g, ox(END_OF_PREFIX)zg.

Friday, December 02, 2005

Task Manager Double Click

If you doubleclick on the grey (gray) background area of the Windows Task Manager, the window frame, menu, status line, and tabs disappear. (Tiny Footprint Mode)