Skip to content

Notes for different topics about theoretical computer science and mathematics.

License

Notifications You must be signed in to change notification settings

rixsilverith/cse-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computer science and mathematics notes

A collection of personal notes for different (theoretical) computer science and mathematics related topics written using LaTeX. Here is a list of covered topics in the notes.

Note Some notes might be incomplete or may contain errors.


Compiling the notes

The notes can be compiled running the provided compile.py Python script in the scripts directory.

python3 scripts/compile.py [options] [notes]

where notes is the name of the folder of the notes to be compiled. If no folder is provided, all the notes will be compiled by default (which may take a while).

The script supports compilation via a Docker image (meaning no LaTeX distribution needs to be installed locally) providing the --docker option. In this case, the Docker image needs to be built beforehand as docker build -t cse-latex-docker.

If not using Docker, a LaTeX distribution is required and some LaTeX dependencies in the latex-stuff directory need to be setup. The later can be achieved running the install-latex-stuff.sh script, which is also included in the scripts folder.

Either way, the resulting files for the notes can be found in the corresponding folder for each topic.


List of covered topics

The following is a list of the covered topics in these notes, each of them in their corresponding folder inside notes.

Introduction to the analysis of algorithms. Classical sorting (local, recursive, heap-based) and search methods (linear search, binary search trees, AVL trees, hash maps).

Learning models. The PAC framework and VC dimension. Linear models. Kernel methods. Dimensionality reduction. Boosting methods.

Measure theory and probability spaces. Discrete and continuous random variables. Inferential statistics: point estimation and confidence sets. Parametric and nonparametric hypothesis testing.


Notes structure

Each topic is contained within its own folder, which is structured as follows.

notes
├── ...
├── linear-algebra
│   ├── main.tex
│   ├── 01-vector-spaces.tex
│   ├── 02-linear-transformations.tex
│   ├── ...
│   ├── references.bib
│   └── figures
│       ├── linear-subspace.svg
│       ├── linear-subspace.pdf_tex
│       ├── linear-subspace.pdf
│       └── ...
├── ...

The topic is splitted into different subtopics whose .tex files are named with the format xx-subtopic-name.tex. Then main.tex bundles up all the subtopics in the folder into a single .tex file, which is compiled at some point.

The figures folder contains all the images used in the notes, usually in .svg format or .pdf. Finally, references.bib contains all the books, notes or whatever is referenced somewhere in the notes, which is used to generate the References section in the document.


Technical LaTeX stuff

To improve the note-taking experience with LaTeX, in the latex-stuff folder there are included some custom document classes and packages ment to ease writing notes and to keep them nice formatted. These include the exmath package for math-related macros and environments along with the csenotes and cselab document classes, each of them defined in their corresponding .sty and .cls files.

Note If you are unfamiliar with the development of custom LaTeX packages and document classes, the Overleaf documentation is a great place to start reading.


Contributing

If you find any mistake, have some suggestion or you want to contribute to the project in any way don't hesitate to open a pull request.

License

These notes are licensed under Creative Commons Attribution - No Commercial - Share Alike 4.0. They can be freely used and distributed as long as the original author is credited, they aren't used for commercial purposes and derived work is shared under this same license.

CC BY-SA 4.0


References

  • Castel G. (2019). How I'm able to take notes in mathematics lectures using LaTeX and Vim. [Article]

About

Notes for different topics about theoretical computer science and mathematics.

Topics

Resources

License

Stars

Watchers

Forks