게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

숙제6을 위한 테스트셋을 공개합니다.

 
글 쓰기   답변 달기     게시판 인덱스 -> 4541.664A Program Analysis (Spring 2011)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
윤용호



가입: 2008년 9월 23일
올린 글: 257

올리기올려짐: 2011년5월4일 17:52    주제: 숙제6을 위한 테스트셋을 공개합니다. 인용과 함께 답변

테스트셋은 여러분이 분석기를 구현할 때 그 방향을 제공해 줄 것입니다.
기본적인 분석이 잘 되는지 테스트 하는 케이스도 있고,
분석하기 좀 더 어려운, 도전적인 케이스도 있습니다.

http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test1.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test2.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test3.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test4.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test5.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test6.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test7.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test8.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test9.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test10.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test11.k
http://ropas.snu.ac.kr/~ta/4541.664A/11/skeleton/hw6_testset/test12.k

각 케이스의 의도는 아래와 같습니다.

test1.k : 일반적인 if문의 분석을 잘 하는 지 확인합니다. z를 11로 나눈 나머지는 8에서 변하지 않습니다.
test2.k : LESS에서 상수끼리 직접 비교하는 경우를 따로 분석할 경우 결과가 더 정확해집니다. y:=8이 실행되지 않는 것이 좋습니다.
test3.k : 간단한 포인터 연산을 잘 분석하는 지 확인합니다.
test4.k : if구문 속에서 포인터가 서로 다른 두 변수를 가리킬 수 있을 경우입니다. 실제 실행에서는 px가 x만을 가리키지만 숙제에서 주어진 요약 공간으로 분석하면 px가 y도 가리킬 수 있습니다.
test5.k : if의 조건에 true나 false가 직접 사용된 경우를 따로 분석하면 결과가 더 정확해집니다.
test6.k : 포인터 p에 여러 개의 주소가 담길 수 있는 경우를 테스트합니다. 여기서는 총 4개의 주소가 담길 수 있습니다. e의 주소는 절대 p에 들어가지 않습니다. 분석의 설계에 따라 a, b, c, d, e 모두가 변할 수도 있고 그 중 일부만 변할 수도 있습니다.
test7.k : 실제 실행에서는 px가 a를 가리키고 a의 값이 1 증가할 뿐이지만, 요약 실행에서는 설계에 따라 a의 값만 증가할 수도 있고 a와 b의 값이 모두 변할 수도 있습니다.
test8.k : 간단한 loop입니다. x의 요약 값이 top이 될 것입니다.
test9.k : 무한루프를 분석할 수 있는 지 확인합니다. x의 값은 11씩 증가하므로 요약된 값이 2로 유지될 것입니다.
test10.k : 루프 안에서 포인터가 사용되는 것도 잘 분석하는 지 확인합니다.
test11.k : 분석기가 2중 루프도 잘 분석하는 지 확인합니다. y값은 11씩 증가하므로 11로 나눈 나머지가 3으로 유지되며, x는 top으로 나타날 것입니다.
test12.k : 여러 단계로 중첩된 포인터를 잘 분석하는 지 확인합니다.

이 외에도 각자가 적절한 테스트 입력을 만들어 사용해보시기 바랍니다. 직접 만든 테스트 입력을 이 글타래에 공유하시는 것도 좋습니다.
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 4541.664A Program Analysis (Spring 2011) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay