하지 않습니다, 분명히 특정 사업자 오히려 평가보다 조항으로 변환됩니다 Test1 및 Test2은 각각 구체적으로 바르/조항의 서로 다른 번호를 줄 것이다 : Test1: 0 vars, 0 primary vars, 0 clauses
Test2: 5 vars, 3 primary vars, 4 clauses
그래서 Element 있지만 abstract이며
HTTP 상호 작용, 즉 HTTPRequest/HTTPResponse 시퀀스를 모델링하고이를 전환 시스템으로 모델링하려고합니다. 내가 사용하여 클래스 상태에 순서를 정의 : 국가는 단순히 메시지의 집합입니다 open util/ordering[State]
: sig State {
msgSet: set Message
}
의 각 쌍 (HTTPR
Software Abstractions의 첫 번째 연습 중 하나는 예제 속성을 관계형 수학 함수 스타일에서 술어 계산식 스타일로 변환하는 것입니다. 이 책에서 논리 장을 연구했지만, 나는 여전히 술어, 탐색 표현식 및 관계형의 예가 아니라고 확신 할 수 없다. 조언 해 주신 점
합금의 문자열 유형을 사용하고 싶습니다 (특히 특수 문자를 사용할 수 있기 때문에). 주어진 String을 인스턴스에 추가하려면 표현식에 포함시키는 것으로 충분하다는 것을 알았습니다. 예 : fact stringInsert{
none!="a"+"b"+"c"
}
은 생성 된 모든 인스턴스에서 원자 "a", "b"및 "c"를 생성합니다. 이제 내
저는 합금으로 된 매우 간단한 모델을 가지고 있습니다. 단지 5 명의 의사를 진료소에 연결해야하지만 5 명의 의사를 진료소에 연결하면됩니다. 여기 내 모델입니다. abstract sig Clinic {
doctors : set Doctor
}
abstract sig Doctor {
}
fact ClinicDoctorRestriction {
1.5 년 전만해도 소프트웨어 추상화 도서 (실제로는 훌륭한 책)를 몇 달 동안 구입하여 읽었습니다. 저는 온라인 튜토리얼과 슬라이드를 Alloy 등에서 읽었습니다. 물론 연습과 내 자신의 몇 가지 모델도했습니다. 나는 심지어 어떤 confs에서 Alloy를 위해 설교했다. 합금 btw에 대한 축하해! 이제 합금의 정수에 대한 최대화 문제를 모델링하고 해결
나는 합금으로 실험하고 있었고이 코드를 썼다. one sig s1{
vals: some Int
}{
#vals = 4
}
one sig s2{
vals: some Int
}{
#vals = 4
}
fact {
all a : s1.vals | a > 2
all i : s2.vals | i < 15