← 최신 논문
🤖 machine learning

Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thought

이 논문은 LLM 이 Rust 프로그램 검증에서 자동 정리 증명기와 같은 추론 능력을 갖는지 평가하기 위해, 검증 과정의 논리적 단계를 명시화한 'VCoT-Lift' 프레임워크와 이를 기반으로 한 'VCoT-Bench' 벤치마크를 제안하며, 현재 LLM 들의 추론 능력이 자동 정리 증명기에 비해 여전히 취약함을 밝혔습니다.

원저자: Zichen Xie, Wenxi Wang

게시일 2026-03-20
📖 3 분 읽기☕ 가벼운 읽기

원저자: Zichen Xie, Wenxi Wang

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

1. 문제: "정답만 맞으면 된다고?" (검증의 블랙박스)

지금까지 AI 가 Rust(안전한 프로그래밍 언어) 코드를 검증할 때, 우리는 **"이 코드가 통과했나요? (O/X)"**만 확인했습니다.

  • 비유: 학생이 수학 시험을 봤는데, 우리는 정답지만 보고 "맞았습니다"라고 점수를 매긴 셈입니다.
  • 문제점: 학생이 진짜 공식을 이해하고 풀었는지, 아니면 운 좋게 정답을 외워서 적었는지, 혹은 엉뚱한 계산으로 우연히 맞췄는지 알 수 없습니다. AI 도 마찬가지입니다. "코드가 안전하다"는 결과만 보고 AI 가 논리를 진짜 이해했다고 착각할 수 있습니다.

2. 해결책: "생각의 과정"을 보여달라 (VCoT)

저자들은 AI 가 어떻게 그 결론에 도달했는지, 그 **생각의 과정 (Chain of Thought)**을 단계별로 보여달라고 요구했습니다. 이를 **'검증 사고 과정 (VCoT)'**이라고 부릅니다.

  • 비유: 이제 학생에게 "정답만 쓰지 말고, 풀이 과정을 자세히 적어봐"라고 시켰습니다. "왜 A 가 B 가 되는지, 어떤 공식을 썼는지"를 하나하나 설명해야 합니다.

3. 도구: "번역기"와 "정리꾼" (VCoT-Lift)

컴퓨터가 만든 증명 과정 (Z3 솔버) 은 인간이 보기엔 너무 난해하고 지저분한 1 만 줄짜리 기계어입니다.

  • 비유: 컴퓨터가 쓴 증명은 "A=1, B=2, A+B=3... (중략) ...x775=x775" 같은 1 만 줄짜리 장난감 레고 조각 같습니다. 인간은 이걸 보고 의미를 알 수 없죠.
  • VCoT-Lift 의 역할: 이 난해한 레고 조각들을 모아, **"이건 'A+B=C' 공식이 적용된 거야"**라고 사람이 읽을 수 있는 명쾌한 해설서로 바꿔주는 '고급 번역기'입니다.
    1. 번역: 기계어를 인간 언어로 바꿈.
    2. 정리: 불필요한 잡음 (A=A 같은 당연한 것) 을 제거.
    3. 수정: 문법 오류를 고쳐서 완벽하게 만듦.

4. 시험지: "구멍 뚫기" (VCoT-Bench)

이제 만든 '해설서'를 바탕으로 AI 를 시험했습니다.

  • 방법: 해설서의 중간중간 **구멍 (Proof Holes)**을 뚫고, AI 가 그 빈칸을 채우게 했습니다.
    • 비유: 수학 문제집에서 중간 단계 30% 를 지우고, "이제 너가 이 빈칸을 채워봐"라고 한 것입니다.
  • 시험 내용:
    1. 양: 지운 부분이 10% 일 때 vs 90% 일 때 (정보를 얼마나 잃어도 풀 수 있나?)
    2. 유형: 루프 (반복문) 증명 vs 단언 (assertion) 증명 등 (어떤 유형을 잘 풀까?)
    3. 위치: 문제의 앞부분 vs 중간 vs 끝부분 (중간 연결 고리를 잘 잇나?)

5. 결과: "AI 는 아직 수학자가 아니다"

10 개의 최신 AI 모델을 시험해 본 결과는 충격적이었습니다.

  • 결론: AI 는 주변에 힌트가 많이 있을 때는 잘 풀지만, 중요한 연결 고리 (빈칸) 가 조금만 사라져도 완전히 망가졌습니다.
  • 비유:
    • AI 의 방식: "아, 앞쪽에 'A+B'가 있네? 그럼 여기서 'C'가 나오겠지?"라고 패턴을 외워서 맞추는 방식입니다. (문맥이 사라지면 당황함)
    • 자동 증명기 (Z3) 의 방식: "A 와 B 의 관계를 논리적으로 따져서 C 를 유도한다."는 진짜 추론을 합니다.
    • 결과: AI 는 **중간 연결 고리 (Connective Reasoning)**를 채우는 데 특히 약했습니다. 앞뒤가 다 보여도, 그 사이를 잇는 논리가 끊기면 AI 는 "어? 뭐지?" 하며 멈춰버립니다.

6. 요약 및 시사점

  • 현재 상태: AI 는 코드를 작성하는 데는 훌륭하지만, 코드가 왜 안전한지 논리적으로 증명하는 '수학자'의 능력은 자동 증명기 (ATP) 에 비해 훨씬 부족합니다.
  • 미래: 이 연구는 AI 가 단순히 "코드 짜기"를 넘어, "왜 이 코드가 안전한지 논리적으로 설명하고 증명하는" 단계로 나아가기 위해, **생각의 과정 (VCoT)**을 훈련 데이터로 써야 한다고 제안합니다.

한 줄 요약:

"AI 가 코드를 검증할 때, 단순히 정답만 맞추는 '암기왕'이 아니라, 논리 과정을 하나하나 설명할 수 있는 '수학자'가 되려면 아직 갈 길이 멀다. 우리는 이제 AI 의 '생각 과정'을 들여다보고 훈련시켜야 한다."

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →