• 제목/요약/키워드: 재귀 타입

검색결과 4건 처리시간 0.022초

재귀모듈 프로그래밍을 위한 타입시스템의 설계 (To Design a Type System for Recursive Module Programming)

  • 임현승;임정표;박성우
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2012년도 한국컴퓨터종합학술대회논문집 Vol.39 No.1(A)
    • /
    • pp.422-424
    • /
    • 2012
  • ML 언어에서 제공하는 모듈 시스템은 강력한 모듈화 프로그래밍과 데이터 추상화를 지원함에도 불구하고 재귀모듈을 지원하지 못한다는 점이 단점으로 지적되어 왔다. 재귀모듈을 이용하면 상호의존적이지만 개념적으로는 서로 분리된 소프트웨어 컴포넌트들을 각각 다른 모듈에 작성할 수 있기 때문에 코드의 재사용성을 더욱 증진시킬 수 있다. 이러한 중요성 때문에 재귀모듈은 지난 10년 동안 프로그래밍 언어 분야에서 깊이 있게 연구되어 왔다. 그러나 기존 연구는 복시문제와 순환타입문제를 완벽하게 해결하지 못하여 한정된 재귀모듈 프로그래밍 패턴만을 지원하는 한계점이 있다. 본 논문에서는 복시문제와 순환타입 문제를 해결하고 다양한 재귀모듈 패턴을 지원하는 타입시스템을 제안한다.

재귀 타입과 합집합 타입을 위한 코인덕션 서브타이핑 (Coinductive Subtyping for Recursive and Union Types)

  • 임현승
    • 정보과학회 논문지
    • /
    • 제43권12호
    • /
    • pp.1342-1350
    • /
    • 2016
  • 귀납법과 코인덕션은 모두 컴퓨터 과학 분야에서 사용되는 중요한 증명 기법이다. 귀납법은 컴퓨터 과학 분야 학부 과정에서 기본적으로 가르치는 기법이며, 상대적으로 잘 알려지고 컴퓨터과학 분야 전반에 걸쳐 잘 쓰이고 있다. 반면에 코인덕션은 귀납법에 비해 많은 사람들에게 다소 어렵고 친숙하지 않은 개념이다. 본 논문에서는 재귀 타입과 합집합 타입을 포함하는 간단한 타입 언어에 대해 서브타입 시스템을 정의하고, 정의한 시스템의 추이성을 증명함으로써 코인덕션에 대해 소개한다. 이를 통해, 코인덕션에 대한 이해도를 높이고, 동시에 재귀 타입과 다양한 타입 요소가 있을 때 서브타입 시스템을 정의하는 방법에 대한 기초를 제공한다.

지문 등록을 위한 템플릿 융합 알고리즘 (Template Fusion for Fingerprint Recognition)

  • 류춘우;문지현;김학일
    • 대한전자공학회논문지SP
    • /
    • 제41권2호
    • /
    • pp.51-64
    • /
    • 2004
  • 본 논문은 다수의 지문 특징점 템플릿(fingerprint minutiae template)을 융합하여 하나의 슈퍼 템플릿(super-template)을 생성하는 새로운 알고리즘을 제안한다. 슈퍼 템플릿은 지문의 올바른 특징점 정보만으로 구성된 템플릿을 의미하는 것으로써 된 연구에서 제안하는 재귀적 베이지안 추정(recursive Bayesian estimation) 방법으로 특징점의 신뢰도를 추정하여 논은 신뢰도를 가지는 특징점만으로 슈퍼 템플릿을 생성한다. 본 논문에서는 지문 영상이 순차적으로 획득될 때, 나중에 획득된 지문 영상 특징점 정보에 재귀적 베이지안 추정 기법을 적용하여 먼저 획득된 영상의 특징점들에 대한 신뢰도를 추정한다. 적용된 재귀적 베이지안 추정 방법은 여러 영상에서 공통적으로 발견된 특징점에 대해 그 신뢰도를 증가시키는 반면, 다른 영상에서 발견되지 않는 특징점의 신뢰도는 감소시킨다. 같은 방법으로, 특징점의 타입(분기점과 단점)에 대한 신뢰도도 추정할 수 있다. 본 논문은 실험을 통해 제안한 알고리즘에 의한 슈퍼 템플릿이 인증 성능을 크게 향상시킬 수 있음을 보였다.

XML 데이터의 인라인 바인딩 방법 (Inline Binding For XNL DataInline Binding For XML Data)

  • 이은정;유가연
    • 정보처리학회논문지A
    • /
    • 제13A권1호
    • /
    • pp.71-78
    • /
    • 2006
  • 어플리케이션에서 XML 데이터를 이용하기 위한 방법으로 XML 타입 정의에 맞는 클래스를 생성하고 데이터의 인터페이스를 담당하게 하는 XML 바인딩 방법이 있다. 그런데 이러한 방법을 지원하는 기존의 바인딩 프레임워크에서는 XML 정의 문법에서 정의된 모든 요소에 대해 클래스를 생성하여 클래스의 수가 많아지고 전체 어플리케이션의 복잡도가 높아지는 문제가 있다. 본 연구에서는 XML 정의 문법에서 XML 바인딩 클래스 생성이 필요한 요소들을 추출하는 인라인 방법을 제안한다. 제안된 바인딩 클래스생성 방법은 반복과 재귀 등의 경우에만 클래스를 생성하고 터미널 요소의 값은 필드로 표현하는 클래스를 생성한다. 그리고 인라인된 요소들의 경로를 회복하여 XML 문서를 생성하기 위한 마샬링 알고리즘을 소개한다. 제안된 방법을 검증하기 위하여 IBinder 시스템을 개발하고 생성된 결과를 기존의 방법과 비교하였다. 그 결과 IBinder 시스템에서 생성된 XML 바인딩 클래스의 수가 크게 줄어드는 것을 보일 수 있었다.