This note covers the following topics:
The naive way of coding, Coding schemes for binary channels and Shannon theorem,
Shannon theorem, Exponential growth rate, Binary codes, The Hamming bound and
perfect codes, The Gilbert-Varshamov bound, Error probability estimations, Union
bound for BER, State representations and trellises of general codes,
Convolutional codes, Tanner graphs and factor graphs.
This note covers the following topics: Inductive Definitions, Transition
Systems, Defining a Language, Concrete Syntax, Abstract Syntax Trees, Abstract
Binding Trees, Functional Language, Control and Data Flow, Imperative Functional
Programming, Cost Semantics and Parallelism, Data Structures and Abstraction,
Lazy Evaluation, Dynamic Typing, Subtyping and Inheritance, Concurrency.
This note introduces the theory of
error-correcting codes to computer scientists. This theory, dating back to the
works of Shannon and Hamming from the late 40's, overflows with theorems,
techniques, and notions of interest to theoretical computer scientists. The
course will focus on results of asymptotic or algorithmic significance.
Principal topics include: Construction and existence results for
error-correcting codes, Limitations on the combinatorial performance of
error-correcting codes, Decoding algorithms, Applications in computer science.
emphasizes the role of computer languages as vehicles for expressing knowledge
and it presents basic principles of abstraction and modularity, together with
essential techniques for designing and implementing computer languages.
This book covers the following
topics: Introduction to Programming,
General Computation Models, Declarative Programming Techniques, Declarative
Concurrency, Relational Programming, Object-Oriented Programming, Encapsulated
State, Concurrency and State, Specialized Computation Models, Semantics and