loop-invariant

Co to jest niezmiennik pętli?

Czytam" Wprowadzenie do algorytmu " CLRS. a autorzy mówią o niezmiennikach pętli, w rozdziale 2 (sortowanie wstawiania). Nie mam pojęcia, co to znaczy.

Niezmiennik pętli przeszukiwania liniowego

Jak widać na wstępie do algorytmów ( http://mitpress.mit.edu/algorithms ), Ćwiczenie stwierdza, co następuje: Input: Array ... tli. Zrozumiałam coś nie tak? Myślę tylko o czymś oczywistym, jak (jest albo Zero, albo między 0 a n). Z góry wielkie dzięki!

Jaki jest najlepszy sposób wyznaczania niezmiennika pętli?

Czy przy użyciu formalnych aspektów do stworzenia jakiegoś kodu istnieje ogólna metoda określania niezmiennika pętli, czy będzie zupełnie inna w zależności od problemu?