1
나는 Theory of Computation 과정에서 반복 프로그램/함수의 정확성을 증명하는 개념을 파악하는 데 어려움을 겪고 있습니다. 좀 더 구체적으로, 나는 루프 불변성을 생각해 낼 수있는 방법을 모른다. 함수가 다중 루프 불변량을 가질 수 있다는 것을 이해하지만, 포스트 조건을 증명하는 데 도움이되는 것을 찾는 방법에 대한 완전한 신비가 있습니다. 현재 숙제를 통해 작업 중이며 다음 함수에 대한 루프 불변성을 찾는 방법을 알지 못합니다.^이 힘 함수에 대한 루프 불변성 찾기
PREcondition: a is a number, b is a natural number.
POSTcondition: return a^b.
def power(a, b):
s = a
k = b
p = 1
while k > 0:
if k % 2 == 1:
p = p * s
s = s * s
k = k // 2
return p
는 지금, 나는 기능의 작동 방식을 이해하지만 내가 전에 언급 한 나를이 함수는를 반환 보여 도움이 될 것입니다 적절한 루프 불변을 발견 할 때, 나는 슈퍼 잃었어요 비.