ინფორმაციის უდანაკარგოდ შეკუმშვა
უდანაკარგოდ ინფორმაციის შეკუმშვა გამოყენებითი მათემატიკის, კერძოდ კი ინფორმაციის თეორიის ერთ-ერთი დარგია. ის შეისწავლის ინფორმაციის შეკუმშვის ისეთ მეთოდებს, რომლების გამოყენებით შემდგომში საწყისი ინფორმაციის ზუსტი ასლის აღდგენა შეიძლება. მაგალითად, ნებისმიერი კომპიუტერული არქივატორი (ZIP, RAR) იყენებს უდანაკარგო შეკუმშვის მეთოდებს. ზოგიერთი ინფორმაციის შეკუმშვა შესაძლებელია ასევე დანაკარგებითაც. მაგალითად JPEG ფორმატში შესაძლებელია ნახატების შეკუმშვა მათი ხარისხის გაუარესების ხარჯზე. ასეთი შეკუმშვის შედეგად ჩვენ ვეღარ აღვადგენთ საწყის ნახატს შეკუმშული ნახატიდან, რადგან ინფორმაციის ნაწილი დაკარგულია. ინფორმაციის უდანაკარგო შეკუმშვა ძირითადად ხდება უფრო ხშირი ინფორმაციის უფრო მოკლე კოდებით, ხოლო უფრო იშვიათის უფრო გრძელი კოდებით წარმოდგენის ხარჯზე. ეს ზოგ ადგილას ზრდის ფაილს, ხოლო ზოგ ადგილას ამცირებს, მაგრამ რადგან კოდი ისეა შერჩეული, რომ უფრო ხშირი ინფორმაცია უფრო მოკლე კოდითაა წარმოდგენილი, ინფორმაცია უფრო მეტ ადგილას იკუმშება და საბოლოო ჯამში ვიღებთ უფრო პატარა ფაილს. თუმცა როდესაც ყველა კომბინაცია ერთნაირი სიხშირით გვხვდება (მაგალითად უკვე შეკუმშულ ფაილში), უდანაკარგო შეკუმშვა აღარ მოქმედებს. ინფორმაციის უდანაკარგოდ შეკუმშვის ყველაზე მარტივი და ხშირად გამოყენებული ალგორითმი, რომელიც ასევე ყველა სხვა ალგორითმის ძირითადი პრინციპია, არის ჰაფმანის კოდირების ალგორითმი. ჰაფმანის კოდი ოპტიმალურია ყველა კოდს შორის თუ მონაცემთა გამოჩენის სიხშირეები (ალბათობები) წინასწარ გვაქვს მოცემული. თუმცა, რადგან ეს ძირითადად ასე არ არის, პრაქტიკაში უფრო რთული კოდები გამოიყენება. მაგალითად, ჰაფმანის ალგორითმზე დაფუძნებული, მაგრამ შედარებით უფრო რთული და ეფექტიანი ალგორითმებია: არითმეტიკული კოდირების ალგორითმი, რომელიც ჰაფმანის კოდის მოდიფიკაციაა გრძელი გზავნილებისთვის (ფაილებისთვის). ლემპელ-ზივ ალგორითმი, რომელიც ან რომლის მცირე მოდიფიკაციებიც (ძირითადად პატენტის მფლობელისთვის ფულის გადახდის თავიდან აცილების გამო), ძირითადად გამოიყენება თანამედროვე შემკუმშვის პროგრამებში.