«program-verification» 태그된 질문

사양이 주어지면 프로그램이이를 충족합니까?

4
계약과 의존 타이핑의 관계
종속 유형 및 프로그래밍 계약에 대한 기사를 읽었습니다. 내가 읽은 대부분의 것에서 계약은 동적으로 제약 조건을 확인하고 종속 유형을 정적으로 확인하는 것으로 보입니다. 부분적으로 정적으로 계약을 체결 할 수 있다고 생각한 논문이 있습니다. 하이브리드 타입 체킹 (C. Flanagan-2006) 하이브리드 유형 및 계약 통합 (J. Gronski, C. Flanagan-2007) 이로 인해 상당한 …

1
증명에 "고차 추론 기술"이 필요한지 여부를 결정하는 방법은 무엇입니까?
질문: 공리와 목표로 구성된 문제에 대한 사양이 있다고 가정합니다 (즉, 관련된 증거 문제는 모든 공리가 주어지면 목표를 충족시킬 수 있는지 여부입니다). 또한 문제가 공리들 사이에 불일치 / 모순이 포함되어 있지 않다고 가정하자. 문제를 증명하는 데 "고차 추론"이 필요한지 미리 결정하는 방법이 있습니까 (즉, 완전한 증거를 먼저 작성하지 않고)? "고차 추론"이란 …

2
완전성 대 프로그램 번역의 완전 추상화
컴파일러 검증 노력은 종종 컴파일러가 완전히 추상적임을 입증하기 위해 내려집니다. 즉, (상황적인) 동등성을 보존하고 반영한다는 것입니다. 완전한 추상화 증명을 제공하는 대신, Hasegawa [ 1 , 2 ] 및 Egger et al.의 최근 (범주 기반) 컴파일러 검증 작업 알. [ 3 ]은 다양한 CPS 번역의 완전성을 증명합니다. 질문 : 완전 완전성과 …

9
미션 크리티컬 소프트웨어를 만드는 방법?
나는 자율 학습 공식적인 방법입니다. 공식적인 방법을 사용하여 미션 크리티컬 소프트웨어 (예 : 원자로 컨트롤러, 항공기 비행 컨트롤러, 우주 탐침 컨트롤러)를 만드는 데 사용됩니다. 그래서 나는 그것을 배우고 싶습니다 : p 그러나 공식적인 방법 (특히 LTL, CTL 및 형제)을 배우면 사양의 정확성 (안전성, 활력, 공정성 등)을 확인하는 데만 사용할 수 …

2
Coq에서 OCaml의 형식적 의미
OCamllight 라고하는 OCaml의 큰 부분 집합의 의미는 몇 년 전 Owens에 의해 HOL로 공식화되었습니다. 보다 최근에는 Kuple , Hayden 및 Hickey 가 Nuprl에서 더 작은 OCaml 하위 집합의 유형 이론적 의미론을 구현했습니다 . Coq에도 비슷한 발전이 있습니까?

3
부분적 정확성으로 종료를 줄이는 것이 얼마나 어려운가요?
프로그램 확인에 익숙하다면 배경 보다 먼저 질문을 읽는 것이 좋습니다. 프로그램 확인에 익숙하지 않은 경우에도 여전히이 질문에 대답 할 수 있지만 배경 지식을 먼저 읽는 것이 좋습니다. 배경 부분적 정확성을 확인할 수없는 경우가 종종 있습니다. 논의를 위해 Floyd-Hoare의 스타일 로이 진술을 정확하게하는 매우 특별한 방법을 선택합시다. 흐름 그래프는 고유와 소리를 …

6
레이블이 지정된 전환 시스템의 실질적으로 계산 가능한 특성은 무엇입니까?
레이블이 지정된 전이 시스템이 애플리케이션에 적합한 모델이라는 것을 알았습니다. 즉, LTS를 사용한 사용 사례 모델링에 대한 논문이 있습니다. 문제는 LTS에 대해 쉽게 입증 할 수있는 것입니다. 기존 솔루션을 재사용하여 적용에 유용한 지 확인하고 싶습니다. LTS (및 사용 사례)의 속성을 쉽게 자동으로 입증 할 수있는 방법을 알고 싶습니다. 따라서 사용 사례의 …

2
Monadic 클래스의 최첨단?
결정 문제의 Monadic Class라고도하는 Monadic First Order Logic은 모든 술어가 하나의 인수를 취하는 곳입니다. Ackermann이 결정할 수있는 것으로 나타 났으며 NEXPTIME-complete 입니다. 그러나 SAT 및 SMT와 같은 문제는 이론적 인 한계에도 불구하고이를 해결하기위한 빠른 알고리즘을 가지고 있습니다. 궁금합니다. 모나 딕 1 차 로직에 대한 SAT / SMT와 유사한 연구가 있습니까? …

1
게으름 관련 메모리 누수를 방지하는 유형 시스템?
아마도 Haskell의 성능 문제의 주요 원인은 프로그램이 우연히 무한한 깊이의 덩어리를 쌓을 때입니다. 이는 평가할 때 메모리 누수와 잠재적 인 스택 오버플로를 유발합니다. 전형적인 예는 sum = foldr (+) 0Haskell에서 정의 됩니다. 게으른 언어를 사용하는 프로그램에서 그러한 썽크 부족을 정적으로 강제하는 유형 시스템이 있습니까? 이 방법은 유형 시스템 확장을 사용하는 …

1
Proof Carrying Code에 Proof Checker가 필요한 이유
Necula의 고전 PLDI'98 논문에서 "인증 컴파일러의 설계 및 구현"에서 고급 검증기는 다음을 사용합니다. 검증 조건을 생성하는 VCGen (안전 조건 자) 조건을 증명할 수있는 1 차 논리 정리 단계 (2)에서 증거를 확인하는 LF 증거 검사기 나는 단계 (3)에 약간 혼란스러워합니다. 왜 필요합니까? (1)과 (2)만으로는 충분하지 않습니까? 왜 우리는 정리 증명에 의해 …

1
양자 샘플링, 시뮬레이션 및 ECT (Extended-Church-Turing) 테스트에서 올바른 검증 역할은 무엇입니까?
답변이 제공되지 않았으므로이 질문을 커뮤니티 위키로 변환하도록 요청하는 플래그가 설정되었습니다. Aaron Sterling, Sasho Nikolov 및 Vor의 의견은 커뮤니티 위키 토론을 위해 열린 다음 해결책으로 종합되었습니다. 해결 : 숫자, 샘플 또는 시뮬레이션 궤적을 출력하는 클래식 알고리즘과 관련하여 엄격한 수학 논리를 사용하려면 다음 제안 중 네 가지 제안을 모두 수락하거나 적용하지 않아야합니다. …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.