W systemie PI (IP) oba powyższe symbole „i” będą reprezentowane przez oddzielne, prywatne identyfikatory. System PI będzie śledził każdy z nich, i potrafi w każdej chwili wskazać jaki obiekt odnosi się do jakiej definicji. Jeśli zostanie podjęta decyzja o przenazwaniu, np. dość nieszczęśliwej zmiennej znakowej, to system PI „wiedząc” o wszystkich użyciach tego identyfikatora, potrafi zmienić go we wszystkich tych miejscach na przykład na „mojeZnaki” bez problemów.
Systemy PI oferują ponadto kilka poziomów szczegółowości, pozwalając programiście niejako włączać lub wyłączać powiększanie (zoom) w postrzeganiu kodu. W powyższym przykładzie programista może wejść na poziom, który „oznajmi” coś w rodzaju:
<<wydrukuj liczby od 1 do 10>> <<wydrukuj "Jestem Polką/Polakiem">>
Tak więc systemy PI w wielkim stopniu samodokumentują się, co pozwala programiście postrzegać program w postaci obrazu na wysokim poziomie uogólnienia.