필자가 직면 한 함수 종속성의 예는 container -> element 및 arguments -> result (Mult Matrix Vector Vector에서와 같이) 매핑으로 요약됩니다. 그것들은 타입 함수로 더 잘 표현되는 것 같습니다. 데이터베이스 이론에서는 더 복잡한 관계가 고려됩니다 (예 : a -> b, b -> a). 형식 기능을 사용하여
class (Monoid w, Monad m) => MonadWriter w m | m -> w where
pass :: m (a,w -> w) -> m a
listen :: m a -> m (a,w)
tell :: w -> m()
위 파이프의 의미는 무엇입니까? 스 니펫은 here에서 가져옵니다.
외부 속성 및 3NF 로의 적절한 분해라는 개념에 혼란스러워합니다. r(A,B,C,D,E,F)
F = FD's
F = {A-> BCD, BC-> DE, B->D, D->A}
내가 알고리즘을 사용 3NF로 분해하기 위해 정규의 커버를 산출 할 : 예를 들어, I는 다음과 같은 관계를 갖는다. 그래서 FD에서 관계없는 속성을 제거해야합니다. 계산 된
는 FD의 FD1 ABD->C
FD2 BC->D
FD3 CD->E
여기에 키의 ABC 프라임 속성-A, B를 ABD을하는 설정을 고려해 , C, D 비 프라임 특성-E 2NF-를 들어 관계가 2NF에있을, 비 프라임 속성은 키에 따라 완전히 기능적이어야합니다. FD3가 2NF를 위반합니까? CD가 적절한 하위 집합인가요? 2NF를 위반할 때 어떤 F
왜이 충돌이 발생합니까? class Foo a b | b -> a where
foo :: a -> b -> Bool
instance Eq a => Foo a a where
foo = (==)
instance Eq a => Foo a (a -> a) where
foo x f = f x == x
기능적 종속성을 제거하면 코
나는 정말로 그것을 얻을 수 없다. 왜 우리는 그것을 왜 필요로합니까? 동일한 유형 매개 변수를 사용하면 같은 유형이어야 함을 의미한다고 생각합니다. 무한 루프를 피하기 위해 컴파일러를 도울 수 있다고 들었습니다. 누군가가 그것에 대해 더 자세히 설명해 줄 수 있습니까? 결국 Real World Haskell에서 기능 의존성을 사용하기 위해 따라야 할 패턴
안녕하세요, 기능적 및 비 기능적 요구 사항에 대해 확신하고 계시나요? 맞습니까? 기능 : 플레이어가 계정을 만듭니다. 플레이어가 지역을 선택합니다. 플레이어 유형을 선택합니다. 플레이어 유형 A/Player 유형 b보기 게임 통계. 플레이어 유형 A보기 상대 목록. 플레이어 유형 A/Player 유형 b 작업 목록에서 대상/암살자를 선택합니다. 플레이어