В условии цикла понятно, что за j, а в теле? А если вы захотите потом с j какие-нибудь операции произвести? Что такое j == k или k = j? А что такое iFoundEdge = iEdge всем сразу понятно.
По поводу экономии буковок - это вообще ужас, уж извините.
Экономия буковок нужна по очень простой причине -- много буковок
читать просто утомительно. При этом к тому же теряется и смысл -- становятся малоразличимы имена переменных и процедур, да и служебные слова на их фоне скрадываются. Пустячок, но -- мешает.
Если цикл коротенький, то для его переменной нужны
безусловно однобуквенные идентификаторы. Если чуть подлиннее -- то длиннее; скажем, номер варианта и количество вариантов следует обозначать, конечно, как iv и nv (или даже nvar, но не ivar, и уж всяко не длиннее). Если же цикл ещё длиннее -- то его фтопку; чересчур длинные циклы означают, что программа неправильно структурирована.
А всю осмысленность следует загонять не в имена, а в комментарии. Которые писать, конечно, лень, но -- надо.