KR100348670B1 - 사용자대화후에컴퓨터의계층적객체구조의일관성을자동복원하는방법및자동일관성복원시스템을구비한컴퓨터 - Google Patents

사용자대화후에컴퓨터의계층적객체구조의일관성을자동복원하는방법및자동일관성복원시스템을구비한컴퓨터 Download PDF

Info

Publication number
KR100348670B1
KR100348670B1 KR1019940023931A KR19940023931A KR100348670B1 KR 100348670 B1 KR100348670 B1 KR 100348670B1 KR 1019940023931 A KR1019940023931 A KR 1019940023931A KR 19940023931 A KR19940023931 A KR 19940023931A KR 100348670 B1 KR100348670 B1 KR 100348670B1
Authority
KR
South Korea
Prior art keywords
objects
incremental
consistency
value
variable
Prior art date
Application number
KR1019940023931A
Other languages
English (en)
Other versions
KR950009429A (ko
Inventor
알렉산더오거스틴
Original Assignee
코닌클리케 필립스 일렉트로닉스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR950009429A publication Critical patent/KR950009429A/ko
Application granted granted Critical
Publication of KR100348670B1 publication Critical patent/KR100348670B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

본 발명은 사용자 대화 후 컴퓨터의 계층적 객체 구조의 일관성을 자동 복원하는 방법, 및 자동 일관성 복원 시스템을 구비한 컴퓨터에 관한 것이다. 컴퓨퍼의 재생 구조는 객체들 간의 일관성 관계의 계층적 구조를 기초로 한다. 주어진 계층 레벨의 하나 이상의 객체들의 함수로서, 각각의 관계는 그 다음 상층 레벨의 하나 이상의 증분 객체들을 규정한다. 하나 이상의 가변 증분 객체들을 변경하는 사용자 대화 후, 이 일관성은 다음과 같이 복원된다. 먼저, 보턴-업 신호 처리 단계 동안 일련의 값 비일관성들이 증분 객체들에 대해 검출된다. 이어서, 상기 일련의 비일관성들의 각 요소에 기초하는 톱-다운 갱신 단계 동안, 상위 계층 객체의 값은 관련된 규정 가변 증분 객체 및/또는 증분 객체가 있는 경우 그 값 변화에 기초하여 갱신된다.

Description

사용자 대화 후에 컴퓨터의 계층적 객채 구조의 일관성을 자동 복원하는 방법 및 자동 일관성 복원 시스템을 구비한 컴퓨터{Method for automatically restoring consistency in a hierarchical computer comprising such a system for automatic consistency restoration}
본 발명은 계층적 객체 구조(hierarchical object structure)의 일련의 객체들(a set of objects)에 기초하여 사용자 대화(user interaction) 후에 컴퓨터내의 정보 디스플레이 구조의 일관성을 자동으로 복원하는 방법에 관한 것으로, 사용자 대화는 하나 이상의 1차 가변 객체들(variable objects)을 변경하고, 이어서, 객체 구조내의 2차 가변 객체들을 갱신한다. 이와 같이, 본 발명은 사용자 대화 시스템 또는 사용자 인터페이스에 관한 것으로, 특히 물리적인 플랫폼(physical platform) 상에서 실현 가능하게 디스플레이를 가속시키거나 일관성을 제공하는 사용자 인터페이스에 관한 것이다. 그에 대한 가장 복잡한 예는 일반적으로 그래픽 인터페이스가 되는데, 이는 사용자에 대한 표시가 공간적으로 고도의 병행성(parallelism)을 요구하기 때문이다. 물론, 본 발명은 상기 그래픽 인터페이스 외에도 비디오 이미지, 음성 및 기타 표현 수단의 인터페이스에도 사용되며, 여기에서도 상기 병행성이 일어날 수도 있다. 그러한 인터페이스는 사용자, 즉 디스플레이가 시스템의 상태와 더 이상 일관성이 없도록 하는 동작을 실행하는 사용자와, 이후에 상기 일관성을 복원하는 프로세스간의 대화로 간주될 수도 있다. 복원(restoration)은 후술하는 이른바 콜-백 기능들(call-back functions)에 의해 통상적으로 실행된다. 이러한 접근법은 완전히 보텀-업식(bottom-up)이고, 항상 1차 가변 객체들이 먼저 연속적으로 갱신되고, 그 직후, 그에 기초하여 연속하는 계층적으로 보다 상위인 레벨에서 2차 가변 객체가 갱신된다. 이러한 것은 프로그램 내에 국부적으로 존재하여 즉시 실행될 수 있는 명령들에 의해 실행된다. 이러한 형태의 구조에 있어서는, 한편으로는, 모든 관련된 일관성 관계의 처리가 보장되지 않는다. 다른 한편으로는또한 예컨대 현재의 이미지 필드의 밖에서만 관련을 갖는 관계들의 불필요한 일관성 관계가 처리될 수도 있다. 이러한 문제는, 프로그램 내에 포함된 모든 것으로만 사용이 이루어지기 때문에 상기 관계들이 명확하게 되지 않은 채로 일관성이 복원되어야 한다는 사실에 기인한다. 이러한 문제는, 예컨대 패키지가 개발, 개선 또는 유지보수되기 때문에 인터페이스가 가변 프로그램 패키지와 동작하게 되는 경우 특히 현저하다. 공지된 바와 같이, 복잡한 모든 프로그램은 끊임없이 그러한 변경 상태에 놓이게 된다.
[발명의 개요]
따라서, 본 발명의 목적은 특히, 프로그램 패키지의 설계, 갱신 및 유지보수를 용이하게 하기 위하여 프로그램 패키지의 다른 부분들에 상관없이 상기한 인터페이스의 상황에서 디스플레이의 갱신을 자동으로 제공하는 방법을 제공하는 것이다. 본 발명의 한가지 특징에 따라, 객체 구조는 일관성 관계들의 네트워크로서 각각의 일관성 관계가 다음의 하위 계층 레벨에서의 하나 이상의 증분 객체들 및/또는 가변 증분 객체들의 함수로서 하나 이상의 증분 객체들을 규정하는 상기 일관성 관계들의 네트워크를 포함하고, 실제 또는 모방 사용자 대화(real or emulated user interaction)가 최하위 레벨에서의 하나 이상의 그러한 가변 증분 객체들을 변경하며, 먼저 보턴-업 신호 처리 단계 동안에 증분 객체들에 대한 일련의 값 비일관성들(a set of value inconsistencies)이 검출되고(signalled), 이어서 상기 일련의 값 비일관성들의 각각의 필요한 요소에 기초하여 톱-다운(top-down) 갱신 단계 동안 상기 관련된 증분 객체의 값이 하위 계층 레벨에서의 상기 관련된 규정된 가변 증분 객체들 및/또는 증분 객체가 있다면 그 값의 변화에 기초하여 갱신되는 것에 의해 달성된다. 따라서, 각각의 평가 또는 갱신에 의해 다음의 객체가 갱신된다. 위에서, 표현들 "상위(higher)"와 "하위(lower)"는 상호 반대 방향을 나타낸다. 또한, 객체들은 순환 구조로 상호 접속될 수도 있고, 그러한 경우에도 "상위"와 "하위"의 관계가 그러한 순환(cycle)을 규정하게 된다. 어떤 상황에 있어서는, 상기한 바는 디스플레이를 불안정하게 하며, 그에 따라 이전의 갱신에 의한 디스플레이내의 변화는, 말하자면 모방된 다음 사용자 대화의 역할을 하게 된다.
이제, 이른바 증분 객체들은 명시적 또는 암시적일 수도 있고, 임의적인 표현과 연계된 것으로 정의된다. 예컨대. 이러한 표현은 대안적으로 테이블로 주어질 수도 있다. 이른바 가변 증분 객체들은 앞서 기술된 바와 같이, 사용자 대화에 의해, 또는 상기 시스템에 의해 자율적으로 변경될 수 있는 값에 연계된 것으로 정의된다. 그러므로, 증분 객체들은 가변 증분 객체들뿐 아니라 다른 증분 객체들에도 의존하게 된다. 따라서, 계산은 순환적으로 행해진다. 상기 변경들은 2 단계들로 실행된다. 즉, 먼저 비일관성(inconsistencies)이 보턴-업(bottom-up) 단계 동안에 자동적으로 검출된다(signalled). 다음에, 톱-다운(top-down) 단계 동안에 일관성(consistencies)이 자동으로 다시 복원된다.
미국 특허 제 4,631,690 호의 공보에는, 계층적 데이터 구조로 정의된 객체들로부터 컬러 이미지를 형성하는 멀티프로세서 시스템이 공개되어 있다. 이 공보에 따라, 주어진 화소에 대한 주어진 객체의 관련성은 톱-다운 단계 동안에 결정되는데, 이는 모든 화소들에 대해 표시가 구해져야 하기 때문이다. 본 발명에 따라,실제로 변경된 가변 증분 객체에 의한 경우에만 증분 객체의 변경이 결정될 필요가 있다. 명백하게, 이러한 방법은 또한 객체 구조의 설정(set-up)을 요구하며, 여기서 각각의 객체는 다음의 상위 레벨에 대한 참조를 가져야 한다. 인용 명세서와의 또 다른 차이점은 인용 명세서의 방법에서는 객체의 크기를 나타내고 주어진 화소에 대한 관계를 나타내는 결합 박스들을 이용한다는 점이다. 하지만, 본 발명에 따라서는, 계층 관계는 방정식들에 의해 정의된다. 결과적으로, 본 발명은 보다 다양한 객체들과 사용자 대화 시스템들에 응용할 수 있다.
본 발명에 따른 갱신은 방정식들 시스템에 의해 실현되고, 이러한 시스템의 특성은 완전히 임의적이다. 본 발명은 명백하게 요구에 따라 실행되며(demand-driven), 예컨대 객체 구조의 특성에 의해 주어진 한계 내에서 올바른 사용자 정보를 생성하는데 필요한 계산이 정확하게 실행되고, 또한 그 수행되는 계산들이 많지도 적지도 않게 된다. 방정식들은 일관성을 정의하고, 결과적으로 다시 복원해야 할 일관성의 정도를 또한 나타낸다. 객체가 비일관적인 경우, 상위 레벨에서의 어떤 다른 객체들 또는 소위 호출자들(callers)이 변경된 객체들을 사용하는지를 찾아내고, 또한 상기 관련하는 상위 레벨에서 그 관련성이 결정된다. 이들 호출자들의 구조는 이후 상세하게 기술된다. 상기한 검색이 행해진 후에만 갱신이 행해진다.
바람직하게는, 가변 객체의 변경에 기초하여, 계층의 아래쪽에 위치하는 부분은 상기 변경으로부터의 직접적인 호출에 의해 갱신되고, 증분 객체들의 구조와 상기 직접 갱신된 부분 사이의 경계는 가변 증분 객체들에 의해 형성된다. 어떤 경우에 있어서, 너무 많은 또는 너무 적은 동작이 실행될 위험성이 낮은 경우 후자의 구성은 프로세스를 가속화할 수 있으며, 그러한 경우에 그러한 1차 가변 객체와 여기에 직접 관련된 2차 가변 객체들 사이에 직접 결합이 존재한다. 구조상의 "보다 먼" 부분에 대하여도, 본 발명에 따른 기본적 방법을 따르게 된다.
본 발명을 또한 전술한 사항에 기초한 사용자 대화 후 자동적인 일관성 복원에 대한 시스템을 포함한 컴퓨터에 관한 것이다. 본 발명의 이점은 종속 청구항들에 기술되어 있다. 컴퓨터 메모리내의 각 객체에 대한 저장은 필요한 경우 값 필드, 호출자 리스트, 환경 필드, 평가자 필드(evaluator field), 및 철회 필드(undo field)를 포함한다.
[종래 기술의 설명]
제 1도에는 컴퓨터의 일반적인 블록도가 도시되어 있다. 여기에서는 구성 서브 시스템들 사이에 상이한 방식으로 실제로 분배될 수 있는 각종 기능들로 구분되어 있다. 이 도면에는 단지 3 가지 기능만이 도시되어 있다. 먼저, 데이터 처리부, 즉 프로세서(20)가 있다. 이 프로세서는 개략적으로 표시된 키보드(22)로부터 사용자 입력을 수신한다. 다른 사용자 정보가 마우스, 음성 입력 채널, 소프트 키보드 및 기타 다른 수단을 통해 입력될 수 있지만, 이들은 그 자체로 본 발명의 일부를 형성하지 않는다. 또한 상기 프로세서는 관련 제어 전자 회로(24)를 가진 개략적으로 나타낸 디스플레이 스크린에 사용자 정보를 출력한다. 다른 사용자 정보가 음성 출력 신호와 특정 표시기 등을 통해 출력될 수 있지만, 이들도 역시 본 발명의 일부를 형성하지 않는다. 이론적인 의미에서, 사용자 대화 시스템은 정보의 입력과출력이 서로간에 그리고 데이터 처리의 실행으로 협력할 수 있는 조직의 어셈블리로 구성된다. 이후에는, 키보드를 통해 입력된 명령이 어떻게 디스플레이된 이미지의 갱신으로 변환되는 지에 대해서만 설명한다.
제 2 도에는 종래의 디스플레이에 대한 갱신이 도시되어 있다. 이러한 개념도에 있어서, 데이터 구조는 삼각형(26)으로 표시되어 있고, 스크린은 24 로 표시되어 있으며, 데이터 구조내의 객체들은 계층적 관계들(hierarchical relations)에 의해 연결되어 있고, 각각의 관계는 주어진 레벨에서의 하나 이상 객체들과 다음의 보다 높은 레벨에서의 하나 이상 객체들 사이 또는 그 역에 대한 연결로 구성된다. 두 객체들 사이에서는 다양한 계층적 연결들이 동일한 수 또는 다른 수의 부연결들(sub-links)을 포함할 수도 있다. 1차 가변 객체들이 최저 레벨에서 변경된다고 가정하고 이를 화살(32)로 표시하였다. 여기에서 다양한 경우들이 관련될 수 있다: 즉, 임의의 객체가 더해지거나, 제거되거나, 교환될 수 있으며, 또한 다른 객체들에 대한 그 논리적 관계들이 변경될 수도 있다(즉, 부가되거나, 최소될 수 있으며, 또 다른 객체에 할당될 수 있다: 이 관계의 변경은 1차 가변 객체 자체와 그 관계 모두에 대해 계층상의 또 다른 레벨을 의미할 수도 있다). 이상의 요약은 제한적인 의미가 아니다. 통상적으로, 일관성(consistency)은 화살(28)의 방향에 따라 아래에서 위로(bottom-up) 복원된다. 프로그램내의 다양한 객체들간의 역관계(inverse relations)가 명시되어 있기 때문에, 객체 구조의 계층 관계는 프로그램내에 암시적으로 존재하게 된다. 그러므로, 실행 기간 동안에는 관계들의 조사가 수행되지 않으며, 명시되어 있는 것은 무엇이든 직접 실행된다: 즉, 매번 다음의 더 높은 2차 가변 객체의 갱신이 일어난다. 갱신의 효과는 어두운 영역으로 표시되어 있다. 갱신이 변경될 필요가 없는 객체에 대한 것인 경우에는, 명시된 모든 다른 변경들이 계속 실행된다. 이러한 것은 또한 객체가 이미지와 관련이 없는 경우에도 일어나게 된다. 결국, 모든 필요한 변경들이 완료되고, 완전한 재생(reproduction)이 실현되어 새로운 외관을 갖게 된다. 갱신이 재생에 아무런 영향을 미치지 못하므로 갱신이 불필요하게 될 수도 있다: 예컨대, 더 높은 레벨에서는 객체의 표시들이 이미지 외부에 있는 것처럼 보일 수도 있다. 한편, 보다 높은 레벨에서는 보다 낮은 계층 레벨에서의 변경들이 불필요하지만, 보다 높은 레벨에서는 여전히 영향이 미치게 될 수도 있다. 후자의 경우에 있어서, 종래 방법은 모든 것을 명시하여야 하며, 이러한 것은 에러가 발생할 가능성이 아주 높게 된다.
[바람직한 실시예의 설명]
본 발명에 따라, 사용자 정보 출력의 일관성이 자동적으로 복원될 뿐만 아니라, 출력될 사용자 정보와 관련하는 한, 통상적으로 디스플레이 스크린에서 응용되는 전체 데이터 구조의 일관성까지도 자동적으로 복원된다. 이러한 데이터 구조 일관성에 있어서 상이한 객체들간 관계들은 예컨대 a = f1(b,c) 식으로 표시된다. 이러한 식은 다른 식들, 예컨대 b = f2(d,e); g = f3(a,h): k = f4(h,c,e)에 의해 계층 구조의 일부를 형성한다. 이 식에 있어서, 좌변의 명시적 객체는 우변의 암시적 객체 보다 계층적으로 더 높은 레벨에 있다. 물론, b = f2(d)와 같은 표현이 마찬가지로 사용될 수 있다. 이미지, 또는 보다 일반적으로 말하면 재생(reproduction)은 객체들의 함수로도 정의된다. 여러 식들의 시스템이 직접 프로그래밍될 수 있다. 다른 방식으로 이 시스템에 대한 형식이 설정되고 장치에는 적절한 변환기(translator)를 설치한다. 따라서, 결국 일관성이 복윈되었을 때 그 재생도 데이터 구조와 일치하게 된다. b 또는 c의 값이 변화하게 되면, 통상 a 의 값이 새로이 계산되어야 한다. 예컨대 b의 값이 연산으로 인하여 변화하게 되면, 변화된 b를 갖는 연산은 a의 값도 또한 갱신해야 한다. 이것이 의미하는 바는, a에 대한 식이 a의 값에 의해 그 값이 결정되는 객체들이 발생하는 더 높은 레벨의 표현을 인용하지 않기 때문에, 프로그래머는 본래의 일관성 관계를 실행하지 않고 그 반대를 실행한다는 것이다. 후술하는 새로운 기술을 사용하면, 단지 관계 a = f1(b, c)이 기술되고, 주어진 부기 시스템(given bookkeeping system)은 a가 발생되는 표현들이 일관되는지의 여부에 대하여 유지된다. 종래 방법과의 차이점은 제 2 도 제 6 도 비교로부터 분명히 나타난다. 이러한 부기 시스템은 제 3 도 내지 제 5 도를 참조하여 설명한다. 일관성은 이른바 증분 평가(incremental evaluation)에 의해 자동적으로 복원된다. 여기서, 데이터 구조내의 각 객체, 즉 상기한 a ...k에는 다음과 같은 부가 데이터가 제공된다. 먼저, 상술한 바와 같은 표현에 의해 그 값이 주어지는 증분 객체(Incremental objects), a, b, g, k 가 존재한다. 다음에, 그러한 표현은 존재하지 않지만, 그 값이 예컨대 콜-백 기능(cal1-back function), 직접적인 사용자 개입((direct user intervention), 또는 또다른 방식에 의해 변경될 수도 있는 가변 증분 객체(variable incremental object)가 존재한다. 이러한 변경으로 인하여, 증분 객체들은 일관성이 없게 되며, 그 일관성이 다시 복원될 때까지 다시 계산되어야 한다. 제 3 도는 증분 객체에 대한 표시의 일예를 나타낸다. 데이터 구조에 실제 존재하는 포맷은 본 발명과 무관하므로 상술되지 않았다. 먼저, 이 증분 객체는, 예컨대 호출 가능한 이름이나 번지와 같은, 화살표 Ident로 표시되는 일종의 식별 정보를 갖는다 이러한 객체는 또한 값 "value" 을 가지며, 이 값은, 예컨대 정수, 부동점 수, 파일 등으로서 관련 객체의 사용과 호환 가능한 어떤 방식으로도 표시될 수 있다. 이 객체는 또한 호출자 리스트내 다수의 "callers"를 포함하며, 이는 그 자신의 값을 계산하기 위하여 최종적으로 유효한 일관성 상태에서 관련 객체의 현재 값을 사용한 다른 객체들의 식별 정보들이 된다. 증분 객체는, 그 환경에 대한 그 표현의 평가가 해당 객체의 실제 값과 동일한 값을 산출하는 경우에만 국부적으로 일관적(consistent)이며, 상기한 환경 그 자체도 역시 국부적으로 일관적이다. 이러한 상황은, (예컨대 디스플레이를 이행하는) 모든 필요한 객체들이 국부적으로 일관적이라면, 전체적으로 일관적이 된다. 부록에 상세히 기재된 바와 같이, 보텀-업 단계(bottom-up phase) 동안에 호출자들(c)이 제거된다. 증분 객체의 값은 객체내에 규정된 평가자 표현 eval 에 의해 계산(평가)된다. 이를 위해 요구되는 객체들의 셋은 환경 env 로 지칭된다. 이들 표현에 대한 상기 예들은 직접적으로 이를 분명하게 한다. 따라서 a = f1(b, c)에 대해 , eval = fl(x, y)이고, 환경 env = {x=b, y=c}이 된다. 객체(a)에 대한 증분 객체(b)의 값은 표현 b. eval(b)은 실행에 의해 얻어지며, 여기서 "점(dot)"은 그 표현식의 후속 부분이 선행 부분의 속성(attribute) 이후 분명해지겠지만, 단일 표현은 도트로 연결된 일련의 부분들을 포함할 수도 있다. 이때, a 는 b.callers 에 부가되고, 바로 다음에 b 는 국부적으로 일관적이다. a 가 일관적이면, a. eval 은 다시 f(b,c)를 계산하지않지만, 값 a. value 을 직접 산출할 것이다. 그 변환(translation)은 자동적일 뿐만 아니라 수동적일 수도 있다.
제 4도에는 가변 증분 객체에 대한 표시예가 도시되어 있다. 이러한 표시는 부분적으로 제 3 도의 표시와 일치하지만 그 값을 결정하는 평가자 표현은 존재하지 않는다. 이는 그 값이 이제 콜-백 기능(call-back function)에 의해 또는 직접적으로 사용자 조작에 의해 결정되기 때문이다. 다른 가능성으로서 시스템 자체가 예컨대 본래의 불안정 때문에 값의 변화를 시작할 수 있다. 예컨대, 분자들의 운동을 시뮬레이팅하는 시뮬레이션 시스템이 계속해서 가시적으로 유지되는 고유열운동에 대한 표현에 편입될 수도 있다. 이 경우, 이 레벨에서는 비일관성이란 있을 수 없다. 명백하게도, 예컨대 사용자가 객채들을 생성한다는 점에서 객체 구조는 변경될 수도 있다. 한편, 객체들의 파괴는 직접적으로 허용되지는 않는다. 필요한 경우, 이러한 파괴는 주지의 방법인 이른바 "불요 정보 정리(garbage collection)" 기술을 이용하여 실현될 수 있다.
객체의 직접적인 재계산은 증분 객체에 대해 주어진 구조에 의한 부기(bookkeeping) 보다도 처리 노력의 관점에서 보다 경제적일 수 있다. 이 경우에, 종결 객체(closure object)(Clos)가 정의될 수 있다. 후자 객체는 증분 객체의 구조를 갖지만 호출자 및 값의 부기는 없으며, 결과적으로, 환경 필드와 평가자 필드만이 존재한다. 이로 의한 직접적인 결과는, 값이 결정될 수 없다는 의미에서 결코 국부적으로 일관적이지 않다는 것이다. 이 객체에 대한 호출자 리스트(caller list)가 없기 때문에 일관성은 검출될 수 없다. 주어진 증분 객체(a)가 종결객체(b)의 평가를 실행하면, (여기서 종결 객체(b) 자체가 증분 객체(c)를 평가함), 객체 (b)가 아닌 객체(a)가 c 의 호출자 세트에 부가된다.
제 5 도에는 이른바 부작용(side-effect) 증분 객체의 표시예가 도시되어 있으며, 이는 예컨대 디스플레이 스크린 상이 재생될 요소를 표시하는데 사용될 수 있을 있다. 이 재생된 요소 자체가 정적이고 또 다른 요소를 형성하기 위해 갱신되어야 하는 경우, 실제로 먼저 과거의 표시가 제거되어야 하고, 그 이후에만 새로운 표시가 형성될 수 있다. 또 다른 특징으로는, 관련 객체가 아무런 값 필드(Value field)를 가지고 있지 않다는 것이다. 그러므로 이 객체는 도시된 바와 같이 관련 증분 객체가 비일관적으로 되는 경우 항상 실행되는 최소 필드(undo field)를 포함한다.
제 6 도에는 본 발명에 따른 재생(reproduction)의 갱신을 도시한다. 제 2 도와 마찬가지로, 제 6 도에는 디스플레이 스크린(24), 데이터 구조(34) 및 제 2 도에서와 동일한 방식으로 실행될 수 있는 1차 가변 객체의 직접 변경(40)을 야기하는 초기 동작(32)이 도시되어 있다. 따라서, 다수의(0 또는 그 이상) 2차 가변 객체들이 직접 변경될 수 있다. 이 2차 가변 객체들이 위치되어 있는 영역은 밴드(42)로 표시된 경계 영역까지 확장된다. 본 발명의 톱-다운/보텀-업 조합 방식은 이 경계 지역으로부터 위쪽으로 실현되었다. 이러한 것은 제 2 도의 상향 표시 화살표와는 반대로 하향 표시 화살표로 표시되어 있다. 경계 밴드(42)의 레벨에서, 직접 변경된 2차 가변 객체들은 설명된 방식으로 가변 증분 객체들로 표시된다. 다음에, 보턴-업 신호 처리 단계 동안에, 먼저 증분 객체들에 있어서 어느 객체들 사이에 값 비일관성이 일어나는지를 검출한다(즉, 이 객체들은 밴드(42)의 최하위 레벨에 위치되어 있지 않다는 것이다). 이 신호 처리 단계의 결과는 예/아니오 량이 된다. 이를 실현하기 위해, 호출자 리스트내의 각 호출자에 대한 각 변경 객체가 관련 객체를 엑세스하고 또한 관련 호출자를 제거한다. 그러면, 원 객체가 그 호출자 리스트에 연관된 다양한 객체들을 연속적으로 액세스할 필요가 있을 수도 있지만, 원 객체 자체에 대하여 이는 불가분의 동작이 되고, 그러므로 호출자 리스트은 이후 공백이 된다. 이러한 동작은 데이터 구조의 상층부에 도달할 때까지 하위 계층의 객체로부터 호출자에 의해 호출된 모든 객체들에 의해 지속된다. 그러면, 그 비일관성들이 알려진다. 비일관성들(inconsistencies)이 검출된 후에, 출력될 사용자 정보와 관련된 모든 객체들에 대해 재계산(recalculation)이 수행되며, 이 재계산은 각각의 일관성 관계를 규정하는 식들에 의해 실행된다. 이 재계산은 화살표(36)로 표시된 톱-다운방식으로 수행될 수 있다. 각각의 재계산의 순서는 원래 임의적이지만, 구조적인 결합(organizational coherence)은 톱-다운(top-down)이 되는데, 이는 복원될 일관성이 그에 따라 결정될 수 있기 때문이다. 다른 비일관성들이 계속해서 존재할 수도 있다. 재계산 객체에 대하여, 해당 계산들이 완료된 때가 항상 지시될 수 있으며, 그때 관련된 호출자들은 부록에 표시된 바와 같이, 재도입된다. 특히 그 값이 변경된 가변 증분 객체들로부터 보텀-업 단계가 개시된다. 톱-다운 단계는 직접 디스플레이된 객체들의 일관성 복원으로부터 개시된다. 이어서 다음의 부록은 보텀-업 처리, 톱-다운 처리, 종결 요소에 대한 상기한 처리, 그리고 부작용 증분 요소에 대한 상기한 처리를 연속적으로 설명한다.
보텀-업 처리에서, 객체(x)에 대한 연산 make_icons의 정의가 주어진다. 주석(comment)은 그 결과를 나타낸다. 톱-다운 처리에서, y는 호출자 객체와 관련되는 것이며, x는 평가되는 것이다. 여기서 관계 g(a, b, c)가 사용되고 부록의 나머지 부분에서는 실례로서만 이용된다.
제 7 도에는 순환적인 구조가 예시되어 있다. 객체 al가 객체 a2에 의존하고, 객체 a2가 객체 a3에 의존하게 되는 방식으로, 객체 a6가 순환적으로 객체 a1에 의존하는 경우의 기본적인 경우가 실현된다. 상술한 바와 같이, 각각의 객체는 하나의 다른 객체를 의존할 필요가 없다. 이러한 구조를 통하여, 안정적인 동작은 물론 불안정한 동작도 조정될 수 있다. 불안정한 구조들 중에서 주기적인 동작과 같이 제한된 동작을 실행하는 구조는 발산하는 동작에 비해 매우 중요하다. 순환적 구조는 비순환적 요소들과 조합될 수 있다.
제 7 도에 도시된 구성은 이른바 일련의 방정식들의 고정점을 구하는데 사용될 수 있다. 단일 함수 f(x)에 대해, 이 고정점은 식 x=f(x)의 해이다. 일련의 식, 즉
x1 = f1(x1...xn)
x2 = f2(x1...xn)
·
·
xn = fn(x1...xn)
에 대하여, 고정점은 상기 일련의 식의 해이다. 이와 관련하여, 제 7 도는순환 그래프의 기본적인 예가 되고, 이러한 그래프의 구조는 복수의 순환 부분들과 비순환 부분들로 더욱 복잡해질 수 있다. 이 고정점은, 주기적이고 발산하는 해가 존재하더라도, 극한 해를 나타내게 된다. 해를 구하는 좋은 방법은 다음과 같다: 즉, 매 사이클마다 객체들 중 하나(예컨대, a6으로 도시됨)가 증분 객체 in(여기서는 i6)과 가변 증분 객체 vn(여기서는 v6)으로 분할된다. 가변 증분 객체는 앞의 디스플레이에 대해 고려되었던 변화를 받게될 수 있는 항목을 나타낸다. 객체 v6에는 초기값이 주어진다. 분할 자체는 통상적인 것이며, 제 3 도 및 제 4 도의 표시된 바에 기초하고 있다. 이 해법은 이제 객체 i6의 값을 객체 v6에 할당하는 것에서부터 시작하는 반복적인 방법이며, 이러한 것은 시스템을 비일관적으로 한다. 상기한 바와 관련하여, 해는 이제 간단하게 된다. v6가 변화됐기 때문에 재계산되는 i6 값의 할당은 v6의 값이 더 이상 변화되지 않을 때까지 반복된다. 이 시점에서 고정점이 도달된다.
부록:
bottom-up
make_incons(x)
:for each0 ∈ x.callers
make_incons(0)
x.callers : x.xallers - {0}
end
#comment x는 비일관적이며,andx.callers = { }, 즉 공백 셋
top-down
eval(x, y)
:=ifx.callers≠{}thenx.callers :=x.callers + {y}return(x.value) fi
x.value:= g(x.env.a. eval(x.env.a eval(x.env.a.x),
x.env.b. eval(x.env.b,x)
x.env.c.eval(x.env.c,x)
);
x.caller:=x.xallers + {y}
return(x.value)
#commentx 는, a,b,c:x = g(a,b,c)와 일치
x.caller≠{}
Closure object
eval(x,y)
:=returng(x.env.a. eval(x.eval.a,y)
(x.env.b. eval(x.eval.b,y)
(x.env.c. eval(x.eval.c,y)
);
Side-effect incremental object, g produces the effect
make_incons(x)
:=x. undo( );
나머지에 대해서는 통상의 증분 객체와 동일
eval(x,y)
:=ifx. callers ≠{} then x.xallers + {y}:return fi
g(x.env.a.eval(x. env.a,x)
x.env.b.eval(x. env.b,x)
x.env.c.eval(x. env.c,x)
);
x.callers := x.callers + {y}
제 1 도는 컴퓨터의 일반적인 블럭도.
제 2 도는 종래의 디스플레이 갱신을 나타낸 도면.
제 3 도는 증분 객체의 표시에 대한 일 예를 나타낸 도면.
제 4 도는 가변 증분 객체의 표시에 대한 일 예를 나타낸 도면.
제 5 도는 부작용 증분 객체의 표시에 대한 일 예를 나타낸 도면.
제 6 도는 본 발명에 따른 디스플레이 갱신을 나타낸 도면.
제 7 도는 순환 구조를 나타낸 도면.
* 도면의 주요부분에 대한 부호의 설명
20 : 프로세서 22 : 키보드
24 : 디스플레이 스크린 26,34 : 데이터 구조

Claims (10)

  1. 계층적 객체 구조(hierarchical object structure)의 일련의 객체들(a set of ovjects)에 기초하여 실제 또는 모방 사용자 대화(real or emulated user interaction) 후에 컴퓨터내의 정보 디스플레이 구조의 일관성(consistency)을 자동으로 복원하는 방법에 관한 것으로, 상기 사용자 대화는 하나 이상의 1차 가변 객체들(variable objects)을 변경하고, 이어서, 상기 객체 구조내의 2차 가변 객체들이 갱신되는, 상기 일관성 자동 복원 방법에 있어서,
    상기 객체 구조는, 일관성 관계들의 네트워크(a network of consistency relation)로서 각각의 일관성 관계가 다음의 하위 계층 레벨에서의 하나 이상의 증분 객체들 및/또는 가변 증분 객체들의 함수로서 하나 이상의 증분 객체들을 규정하는 상기 일관성 관계들의 네트워크를 포함하고.
    상기 사용자 대화는 최하위 레벨에서의 하나 이상의 그러한 가변 증분 객체들을 변경하며,
    먼저, 보텀-업 신호 처리 단계 동안, 증분 객체들에 대한 일련의 값 비일관성들(a set of value inconsistencies)이 검출되고(signalled), 이어서 상기 일련의 값 비일관성들의 각각의 요소에 기초하는 톱-다운(top-down) 갱신 단계 동안, 상기 관련된 증분 객체의 값이 하위 계층 레벨에서의 상기 관련된 규정 가변 증분 객체들 및/또는 증분 객체들이 있다면 그 값의 변화에 기초하여 갱신되는 것을 특징으로 하는 일관성 자동 복원 방법.
  2. 제 1 항에 있어서,
    상기 일관성 관계들 중 적어도 각각 일관성 관계는 하나의 관련식에 의해 표시되는, 일관성 자동 복원 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    가변 객체의 변경에 기초하여, 상기 계층의 최하위층(foot)에 위치된 부분이 상기 변경으로부터의 직접적인 호출에 의해 갱신되고,
    상기 증분 객체들의 구조와 상기 직접 갱신된 부분 사이의 경계가 가변 증분 객체들에 의해 형성되는, 일관성 자동 복원 방법.
  4. 제 1 항 또는 제 2 항에 있어서.
    증분 객체들은 값 필드(value field), 호출자 리스트(caller list), 환경 필들(environment field) 및 평가자 필드(evaluator field)를 포함하고,
    가변 증분 객체들는 값 필드와 호출자 리스트만을 포함하는, 일관성 자동 복원 방법.
  5. 제 4 항에 있어서,
    종결 객체(closure object)가 환경 펄드와 평가자 필드만을 포함하는, 일관성 자동 복원 방법.
  6. 제 4 항에 있어서,
    부작용(side-effect) 증분 객체가 호출자 리스트, 환경 필드, 평가자 필드 및 취소 필드(undo field)만을 포함하는, 일관성 자동 복원 방법.
  7. 제 1 항 또는 제 2항에 있어서,
    영상 디스플레이 장치에 대한 상기 디스플레이 구조를 실현하는, 일관성 자동 복원 방법.
  8. 제 1항 또는 제 2 항에 있어서,
    상기 디스플레이 구조는 적어도 하나의 그래프 사이클을 포함하고,
    각각의 사이클 동안에 최하위 계층 레벨이 정의되고, 이러한 레벨에서 객체는 사이클내 증분 객체와 사이클의 가변 증분 객체로 분리되며,
    외부 변화가 상기 복원을 위한 초기화 동작으로서 상기 가변 증분 객체에 할당되는, 일관성 자동 복원 방법.
  9. 제 8 항에 있어서,
    상기 디스플리이 구조에 의해 표시된 일련의 식들 xj = fj(x1...xn), 1≤ j≤ n의 고정점을 구하는, 일관성 자동 복원 방법.
  10. 제 1 항 또는 제 2 항에 청구된 바와 같은 사용자 대화 후의 자동 일관성 복원을 위한 시스템이 제공된 컴퓨터로서,
    다음의 상위 계층 레벨에서의 하나 이상의 증분 객체들을 각각 주어진 계층 레벨에서 하나 이상의 가변 증분 객체들의 함수로서 규정하는 일관성 관계들의 그 계층적 객체 구조내의 일련의 객체들을 기초하여 정보를 재생하는 재생 수단을 포함하고,
    상기 사용자 대화는 최하위 레벨에서의 하나 이상의 그러한 가변 증분 객체들을 변경하는, 상기 자동 일관성 복원을 위한 시스템이 제공된 컴퓨터에 있어서,
    상기 시스템은, 2 단계 제어, 먼저, 보텀-업 신호 처리 단계 동안, 증분 객체들에 대한 일련의 값 비일관성들을 검출하는(signalling) 제어와, 이어서 상기 일련의 값 비일관성들의 각각의 필요 요소에 기초하는 톱-다운(top-down) 갱신 단계 동안, 상기 관련된 증분 객체의 값이 하위 계층 레벨에서의 상기 관련된 규정 가변 증분 객체들 및/또는 증분 객체들이 있다면 그 값의 변화에 기초하여 갱신하는 제어를 포함하는 것을 특징으로 하는 자동 일관성 복원을 위한 시스템이 제공된 컴퓨터.
KR1019940023931A 1993-09-24 1994-09-23 사용자대화후에컴퓨터의계층적객체구조의일관성을자동복원하는방법및자동일관성복원시스템을구비한컴퓨터 KR100348670B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
BE9301002A BE1007551A3 (nl) 1993-09-24 1993-09-24 Werkwijze voor het in een rekenmachine automatisch herstellen van consistentie in een hierarchische objektstruktuur na een interaktie door een gebruiker en rekenmachine voorzien van zo een systeem voor automatische consistentieherstelling.
BE09301002 1993-09-24

Publications (2)

Publication Number Publication Date
KR950009429A KR950009429A (ko) 1995-04-24
KR100348670B1 true KR100348670B1 (ko) 2002-11-29

Family

ID=3887362

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940023931A KR100348670B1 (ko) 1993-09-24 1994-09-23 사용자대화후에컴퓨터의계층적객체구조의일관성을자동복원하는방법및자동일관성복원시스템을구비한컴퓨터

Country Status (10)

Country Link
US (2) US5596701A (ko)
EP (1) EP0646862B1 (ko)
JP (2) JPH07200280A (ko)
KR (1) KR100348670B1 (ko)
BE (1) BE1007551A3 (ko)
DE (1) DE69427008T2 (ko)
HK (1) HK1012745A1 (ko)
MY (1) MY138242A (ko)
SG (1) SG44869A1 (ko)
TW (1) TW359786B (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE1007551A3 (nl) * 1993-09-24 1995-08-01 Philips Electronics Nv Werkwijze voor het in een rekenmachine automatisch herstellen van consistentie in een hierarchische objektstruktuur na een interaktie door een gebruiker en rekenmachine voorzien van zo een systeem voor automatische consistentieherstelling.
KR20000015042A (ko) * 1998-08-26 2000-03-15 김영환 전전자교환기의 대용량 저장장치의 제어방법
US9006175B2 (en) 1999-06-29 2015-04-14 Mannkind Corporation Potentiation of glucose elimination
ATE385193T1 (de) 2002-03-20 2008-02-15 Mannkind Corp Inhalationsgerät
CA2575692C (en) 2004-08-20 2014-10-14 Mannkind Corporation Catalysis of diketopiperazine synthesis
BR122019022692B1 (pt) 2004-08-23 2023-01-10 Mannkind Corporation Composição terapêutica em pó seco contendo dicetopiperazina, pelo menos um tipo de cátion e um agente biologicamente ativo
DK1937219T3 (en) 2005-09-14 2016-02-15 Mannkind Corp A method for drug formulation based on increasing the affinity of the crystalline surfaces of the microparticle of active principles
IN2015DN00888A (ko) 2006-02-22 2015-07-10 Mannkind Corp
US8485180B2 (en) 2008-06-13 2013-07-16 Mannkind Corporation Dry powder drug delivery system
KR101933816B1 (ko) 2008-06-13 2019-03-29 맨카인드 코포레이션 건조 분말 흡입기 및 약물 투여 시스템
EP2609954B1 (en) 2008-06-20 2021-12-29 MannKind Corporation An interactive apparatus for real-time profiling of inhalation efforts
TWI532497B (zh) 2008-08-11 2016-05-11 曼凱公司 超快起作用胰島素之用途
US8314106B2 (en) 2008-12-29 2012-11-20 Mannkind Corporation Substituted diketopiperazine analogs for use as drug delivery agents
US8538707B2 (en) 2009-03-11 2013-09-17 Mannkind Corporation Apparatus, system and method for measuring resistance of an inhaler
MY157166A (en) 2009-06-12 2016-05-13 Mankind Corp Diketopiperazine microparticles with defined specific surface areas
JP5784622B2 (ja) 2009-11-03 2015-09-24 マンカインド コーポレ−ション 吸入活動をシミュレートするための装置及び方法
RU2531455C2 (ru) 2010-06-21 2014-10-20 Маннкайнд Корпорейшн Системы и способы доставки сухих порошковых лекарств
JP6133270B2 (ja) 2011-04-01 2017-05-24 マンカインド コーポレイション 薬剤カートリッジのためのブリスター包装
WO2012174472A1 (en) 2011-06-17 2012-12-20 Mannkind Corporation High capacity diketopiperazine microparticles
CA2852536A1 (en) 2011-10-24 2013-05-02 Mannkind Corporation Methods and compositions for treating pain
ES2624294T3 (es) 2012-07-12 2017-07-13 Mannkind Corporation Sistemas de suministro de fármacos en polvo seco
US9946233B2 (en) * 2012-09-28 2018-04-17 Siemens Schweiz Ag Apparatus and methods for providing building automation system data updates to a web client
EP2911690A1 (en) 2012-10-26 2015-09-02 MannKind Corporation Inhalable influenza vaccine compositions and methods
EP2970149B1 (en) 2013-03-15 2019-08-21 MannKind Corporation Microcrystalline diketopiperazine compositions and methods
BR112016000937A8 (pt) 2013-07-18 2021-06-22 Mannkind Corp formulações farmacêuticas de pó seco, método para a fabricação de uma formulação de pó seco e uso de uma formulação farmacêutica de pó seco
CA2920488C (en) 2013-08-05 2022-04-26 Mannkind Corporation Insufflation apparatus and methods
WO2015148905A1 (en) 2014-03-28 2015-10-01 Mannkind Corporation Use of ultrarapid acting insulin
US10561806B2 (en) 2014-10-02 2020-02-18 Mannkind Corporation Mouthpiece cover for an inhaler

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR900013418A (ko) * 1989-02-06 1990-09-05 하워드 지. 피거로아 컴퓨터 시스템
JPH02224027A (ja) * 1989-02-27 1990-09-06 Hitachi Ltd 故障復旧支援システム
JPH03102428A (ja) * 1989-09-18 1991-04-26 Hitachi Ltd 高級言語のコンパイラの手続き呼出し処理方式
JPH03252812A (ja) * 1990-03-02 1991-11-12 Hitachi Ltd プログラム実行状況表示方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8300872A (nl) * 1983-03-10 1984-10-01 Philips Nv Multiprocessor-rekenmachinesysteem voor het tot een gekleurde afbeelding verwerken van in een hierarchische datastruktuur gedefinieerde objekt-elementen.
US5179718A (en) * 1988-11-29 1993-01-12 International Business Machines Corporation Method of filing having a directed relationship through defining a staple relationship within the context of a folder document
CA1323448C (en) * 1989-02-24 1993-10-19 Terrence C. Miller Method and apparatus for translucent file system
US4953106A (en) * 1989-05-23 1990-08-28 At&T Bell Laboratories Technique for drawing directed graphs
US5226117A (en) * 1990-05-15 1993-07-06 International Business Machines Corporation Method for simultaneous update and change in parent and child windows
JPH0756628B2 (ja) * 1990-10-22 1995-06-14 富士ゼロックス株式会社 グラフィカル・ユーザインターフェースの編集装置
JP2556189B2 (ja) * 1990-10-29 1996-11-20 富士ゼロックス株式会社 オブジェクト指向計算機システムにおけるメソッド起動装置
JPH04191941A (ja) * 1990-11-27 1992-07-10 Hitachi Ltd オブジェクト管理システム
US5276775A (en) * 1990-12-07 1994-01-04 Texas Instruments Inc. System and method for building knowledge-based applications
US5414801A (en) * 1991-06-11 1995-05-09 Virtus Corporation Computerized method and apparatus using containment relationships to represent objects in a three-dimensional space, and for moving therethrough
US5428554A (en) * 1992-09-03 1995-06-27 International Business Machines Corporation Hierarchical graph analysis method and apparatus
US5430870A (en) * 1992-10-13 1995-07-04 Sun Microsystems, Inc. Saving and restoring traversal state attributes of a directed acyclic graph structure network for a parent structure when it invokes a child structure for traversal
BE1007551A3 (nl) * 1993-09-24 1995-08-01 Philips Electronics Nv Werkwijze voor het in een rekenmachine automatisch herstellen van consistentie in een hierarchische objektstruktuur na een interaktie door een gebruiker en rekenmachine voorzien van zo een systeem voor automatische consistentieherstelling.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR900013418A (ko) * 1989-02-06 1990-09-05 하워드 지. 피거로아 컴퓨터 시스템
JPH02224027A (ja) * 1989-02-27 1990-09-06 Hitachi Ltd 故障復旧支援システム
JPH03102428A (ja) * 1989-09-18 1991-04-26 Hitachi Ltd 高級言語のコンパイラの手続き呼出し処理方式
JPH03252812A (ja) * 1990-03-02 1991-11-12 Hitachi Ltd プログラム実行状況表示方法

Also Published As

Publication number Publication date
BE1007551A3 (nl) 1995-08-01
US5731815A (en) 1998-03-24
JP2006114055A (ja) 2006-04-27
JPH07200280A (ja) 1995-08-04
EP0646862B1 (en) 2001-04-04
DE69427008D1 (de) 2001-05-10
EP0646862A1 (en) 1995-04-05
DE69427008T2 (de) 2001-10-18
US5596701A (en) 1997-01-21
TW359786B (en) 1999-06-01
JP3946233B2 (ja) 2007-07-18
HK1012745A1 (en) 1999-08-06
SG44869A1 (en) 1997-12-19
KR950009429A (ko) 1995-04-24
MY138242A (en) 2009-05-29

Similar Documents

Publication Publication Date Title
KR100348670B1 (ko) 사용자대화후에컴퓨터의계층적객체구조의일관성을자동복원하는방법및자동일관성복원시스템을구비한컴퓨터
US4853873A (en) Knowledge information processing system and method thereof
US5961610A (en) Systems, methods and apparatus for generating and controlling display of medical images
US4937760A (en) Method for sharing common values implicitly among communicating generative objects
JP3136035B2 (ja) データベースシステム用インターフェースのための自動レイアウト・ジェネレータ及びその生成方法
US5950002A (en) Learn mode script generation in a medical imaging system
US7190363B2 (en) Method and system for processing graphics simulation data
US6707469B1 (en) Synchronous execution in a medical imaging system
JP2008243219A (ja) ソフトウェアオブジェクトを実現する方法
JPH0844547A (ja) オブジェクト指向ソフトウェアの視覚化
US5831612A (en) Cell overlap detection and correction in a medical imaging system
US5452453A (en) Rule based production system adapted for complex procedural flow
US20050289450A1 (en) User interface virtualization
JP2554446B2 (ja) 実体関連図を記憶及び表示するための方法並びにコンピュータ・システム
US6931412B2 (en) Extensible actions and container types in an extensible scene graph system
US4964064A (en) Method and apparatus for constraint-oriented inference
Hirai et al. Modeling the process of problem-solving by associative networks capable of improving the performance
Anagnostopoulos et al. Writing Real Programs in DCL
JPH01162922A (ja) 表示ウィンドウ管理方式
JPH0721802B2 (ja) 数式編集装置
JPH03286226A (ja) プログラム生成方法及びシステム
Kalvala et al. Implementation and use of annotations in HOL
Hug et al. User interaction in HP PE/SolidDesigner
Van Wyk et al. A programming and problem-solving seminar
Curran The application of CASE tools in real-time control projects

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120801

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20130729

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140731

Year of fee payment: 13

EXPY Expiration of term