복잡성 하한 : 의사 결정 트리와 RAM의 차이


15

최근 의사 결정 트리 모델에서 문제의 복잡성에 대한 2 차 하한을 발견했으며이 결과가 랜덤 액세스 머신 모델에 부분적으로 일반화 될 수 있는지 궁금합니다 . 에 의해 부분적으로 , 나는 특정 시간 / 공간 트레이드 오프와 프로그램을 RAM으로 일반화를 의미한다. 예를 들어, 선형 시간 및 공간 RAM 프로그램으로 내 문제를 해결할 수 없음을 보여주고 싶습니다.

AM Ben-Amram과 Z. Galil은이 논문 에서 시간 와 공간 s 에서 실행되는 RAM 프로그램 을 O ( t) 로 시뮬레이션 할 수 있음을 증명했습니다.티에스 포인터 시스템의 시간. 의사 결정 트리에 적용될 수있는 유사한 결과를 알고 있습니까?영형(티로그⁡에스)

또한,이 공간에서 실행되는 RAM 프로그램을 시뮬레이션 할 수 정도의 의사 결정 트리 ? (직관적으로, 간접 주소 지정은 degree 노드를 사용하여 시뮬레이션 할 수 있습니다 )에스에스≤에스


고전적인 쿼리 복잡성 (의사 결정 트리 복잡성)에 대해 너무 많이 알지 못하지만 양자 설정 (양자 쿼리 복잡도)의 유사한 모델에서 작업 할 때 때로는 회로 모델의 하한이 상당히 떨어집니다. 예를 들어, HSP의 경우 쿼리 복잡성이 다항식이지만 쿼리 간의 단일 게이트는 기하 급수적 인 게이트를 사용합니다 ... 일반 HSP가 다항식 시간에 수행 할 수 없다고 생각되는 경우 쿼리 복잡도는 매우 느슨한 하한. 아니면 매우 느슨한 하한으로 괜찮습니까?
— Artem Kaznatcheev

실제로, 나는 RAM에서 실행되는 (일부) 프로그램에 대한 슈퍼 선형 하한을 얻고 싶습니다. 그렇기 때문에 공간 복잡성을 제한하면 도움이되기를 바랍니다.
— Totoro

1
나는 너의 질문을 이해할 수 없다. 쿼리 복잡성에 대한 이차 하한을 어떻게 가질 수 있습니까? 또한 시공간 상충 관계는 종종 직접 제품 정리를 사용하므로 이러한 결과를 얻으려면 더 열심히 노력해야 할 수도 있습니다.
— Hartmut Klauck

1
의사 결정 트리 모델의 복잡성 하한은 문제의 가능한 출력 수에 대한 하한에서 비롯됩니다 (대수는 트리의 높이에 대한 하한을 제공합니다).
— Totoro

답변:


10

RAM을 시뮬레이션 할 수있는 의사 결정 트리와 관련된 자연스러운 모델은 분기 프로그램입니다. 기본적으로 공통 하위 트리가 통합되어 DAG를 생성하는 의사 결정 트리입니다. RAM의 시간 T와 공간 S는 ​​분기 프로그램에서 높이 T와 크기 2 ^ S로 시뮬레이션 할 수 있습니다. 다 방향 분기를 사용해야 할 수도 있습니다.

의사 결정 문제의 경우 모든 의사 결정 트리에는 입력의 높이 = # 입력 및 공간 = 총 비트 수가 필요하다는 것이 분명합니다. 다 방향 분기에서는 입력의 # 비트가 일반적인 입력 수의 측정 값보다 클 수 있습니다 (예 : 각 n 개의 로그를 n 개의 로그를 취합니다) nlog n의 전체 입력 비트와 같은 문제에 대해서는 시간 O (n) 및 공간 = O (n) 비트에서는 특정 문제를 해결할 수 없습니다. 그게 당신의 형태에 문제가 있습니까?

더 많은 하한을 얻으려고 출력 수를 사용하고 있다고 제안하는 것 같습니다. 다중 출력 문제의 경우 리프 노드가 아닌 단일 가장자리를 따라 많은 출력을 허용하는 것이 일반적입니다 (예 : Borodin-Cook의 1982 년 하한 정렬에 대한 논문 참조). 그러나이 가정이 없어도 높이 = # 입력 및 공간 = # 입력 비트를 가진 모든 함수를 계산할 수도 있습니다. (입력을 읽고 기억하고 각 리프 노드에서 모든 값을 출력하십시오.)


답변 주셔서 감사합니다. 문제의 입력은 정수 집합의 집합이므로 목록으로 주어진다고 가정 할 수 있습니다. 어쨌든, Borodin과 Cook의 기술을 지적 해 주셔서 감사합니다 (아직 전혀 몰랐습니다). 내 문제에 일종의 방법을 적용 할 수 있기를 바랍니다.
— Totoro

1

손실없이 RAM을 시뮬레이션하는 의사 결정 트리와 관련된 자연스러운 모델은 분기 프로그램입니다. 기본적으로 공통 하위 트리가 통합되어 DAG를 생성하는 의사 결정 트리입니다. RAM의 시간 T와 공간 S는 ​​분기 프로그램에서 높이 T와 크기 2 ^ S로 시뮬레이션 할 수 있습니다. 다 방향 분기를 사용해야 할 수도 있습니다.

의사 결정 문제의 경우 모든 의사 결정 트리에는 입력의 높이 = # 입력 및 공간 = 총 비트 수가 필요하다는 것이 분명합니다. 다 방향 분기에서는 입력의 # 비트가 일반적인 입력 수의 측정 값보다 클 수 있습니다 (예 : 각 n 개의 로그를 n 개의 로그를 취합니다) nlog n의 전체 입력 비트와 같은 문제에 대해서는 RAM의 시간 O (n) 및 공간 = O (n) 비트에서는 특정 문제를 해결할 수 없습니다.) 이것이 문제의 형태입니까?

더 많은 하한을 얻으려고 출력 수를 사용하고 있다고 제안하는 것 같습니다. 그러나 이것으로도 높이 = # 입력 및 공간 = # 입력 비트로 모든 함수를 계산할 수도 있습니다. (입력을 읽고 기억하고 각 리프 노드에 필요한 모든 값을 출력하십시오. 단일 노드에서 여러 개의 출력을 허용하는 것이 일반적입니다.)


저자가이 답변을 이전 답변과 병합하는 것이 좋습니다. 거의 동일하기 때문입니다.
— Oleksandr Bondarenko
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.