text in blue boxesmeans a command for you to execute.
C-xmeans, in Emacs, hold down the <Ctl> key and press x
M-xmeans press the <Esc> key and press x or hold the <Alt> key and press the x key.
$ command preceded by a dollar signis a command to be typed in your shell-- DO NOT type the dollar sign.
Remember that all math symbol must be between $ or \[ \]. For example, for math within a sentence:
$\frac{1}{2}$or for math centered in the page:
\[ H(x)=-\sum_x p(x)\log p(x) \]The basic commands you will need are
to C-x C-f open file C-c C-t C-p switch to PDF mode C-~ switch to math mode ` prefix for math symbols such as `a for \alpha C-x C-s save C-c C-c continue to next: typeset-view, finish version control log comment, or collapse BibTeX entry C-x vv do next logical thing in version control
$ zip homework homeworkThis will create a file homework.zip that you can email as an attachment.
$ cd f:/ tar -jcvf homework.tbz homeworkThis will create a file homework.tbz that you can email as an attachment.)
Huffman Coding in real life:
bzip compression software (note, a
different kind of free software licence: BSD, rather than GPL) .
java Turing Machine with nice explanation.
Turing Machine in
Elisp (you can run in Emacs)
Solomonoff
Publications (see 1964)
Chaitin home (see "On the length of programs for computing finite binary sequences " especially part 2)
Source for this? "Kolmogorov, A. N. (1965). Three approaches to the quantitative definition of information. Problems Inform. Transmission. 1, 1-7."
Chaitin lectures (See the Mälardalen University lecture)
Paul Shields (see his 'tutorial' for nice applications to statistics, ready to use in proofs.)
Mark Hansen
Find MDL paper with Bin Yu: "M. H. Hansen and B. Yu (2001), Model
Selection and the Principle of Minimum Description Length, Journal
of the American Statistical Association, Vol. 96, No. 454, pp. 746-774"?
Not on his Papers
page. Also see video
lecture by
Rissanen. Also online
MDL
Demo.
M-x eshellM-x is produced by pressing ESC and then pressing x
$ df -h(disk free -human readable form) shows your drives- the 3.8 gig is your flash drive.)
$ cd f:(or whatever the letter of you drive is)
$ bzr branch http://lchen.org/~lchen/infotheory
$ bzr update
$ ls
C-x C-f
M-x RR will ask you what directory you want to start in.
$ ~Switch between screens and the minnibuffer (small area at bottom of screen where commands ask for input and echo results) with
C-x oswitch between buffers with
C-x band split or unsplit screen with
C-x 2 C-x 1
C-c C-n
C-c qanswer n unless you created large objects in your R session and plan to come back to the same computer to keep working.
C-x C-cDecide whether to save shell history and unsaved changes to your files.
M-x find-name-dired
M-x eshell cd (path to your file)
Distributed version control works by keeping a hidden copy of all your work and each incremental change in a repository. We will use our whole flash drive as a shared version control repository. That means, roughly, that if you have two copies of a version controlled directory, there is only one hidden version, instead of two, saving space (see the manual for a more precise description of 'shared repository').
We will use one copy as a master version of what Lihua wrote. Update inside this directory (bzr pull) to keep it current with Lihua's most recent changes.
We will make a local branch in which to do the homework: by writing in LaTeX right onto the homework handout (you can use multiple files if you prefer-- good practice).
Check in your changes using version control as you make progress on the problems.
Give credit if you consulted with a classmate on how to do a problem and note collaboration in your version control log. The final revision should be obviously original and you should be able to explain it orally.
The whole version controlled directory should be turned in, perhaps as a bzip2 archive or by Lihua branching from your directory.
$ bzr help
$ rm -r infotheoryand just branch another copy, as in Monday's class if you have not done anything you want to keep in that directory.
$ cd f:/ $ bzr initat your flash drive root. Advantages? Disadvantages? What if you want to move the whole repository? Should be ok with the rsync command and a switch to ignore the iPoIDE08 directory.
$ rsync --exclude=iPoIDE08 f: ~/myhome/
$ cd infotheory bzr pull
$ cd F:/ $ bzr branch infotheory homework $ cd homework
$ ls C-x C-f hw.tex
Also, add a bibliography and include at least a citation for Cover's book (see Yang's book review at bottom of this page for full citation) from which the problems came.
C-c C-t C-p
C-c C-cView with
C-c C-cor
M-x eshell SumatraPdf hw.pdf
M-x vc-<TAB>When you issue a command with M-x, the minnibuffer will briefly prompt you with the key binding for that command, if it has one. Try to learn the key bindings for more common commands.
One important command is
C-x v vexecuted while reading a file that is under version control (see the status line), this will do whatever makes logical sense at that point: update, or commit. In a commit, it will automatically pop up a log window where you should always make a little log entry summarizing in a couple of words what you did. Expect that your log will be read ( you will turn in the whole directory in this class).
C-c C-ccloses the log window and finished the commit when you are finished.
Version control automatically facilitates something like this for developers where, as we discussed in the section on free software, property rights are very important. If you have a vc log showing what you did and when, by committing as you make changes, you can demonstrate who did what and prove your ownership of key ideas if challenged.
What software do you use and what are its advantages for:
If you are graduating and are sure you will not use the flash drive system, please return it so other students can have a chance.