Introductory course on quantum computation and basic algorithms. Subjects: classical circuit model, irreversibility and reversibility, principles of quantum mechanics (axiomatic approach) and Deutsch model of quantum circuits. Deutsch-Josza algorithm, hidden subgroup and Simon algorithm, factorization and Shor's algorithm, Grover data base search. Possibly distributed protocols and/or HLL. Error correcting codes: Calderbank-Steane-Shor, stabiliser formalism. We will also use NISQ machines in exercises and/or projects.