Je souhaite analyser les langues spécifiques au domaine défini par l'utilisateur. Ces langages sont généralement proches des notations mathématiques (je n'analyse pas un langage naturel). Les utilisateurs définissent leur DSL dans une notation BNF, comme ceci: expr ::= LiteralInteger | ( expr ) | expr + expr | expr * …
Il existe de nombreuses façons de définir la complexité de Kolmogorov et, généralement, toutes ces définitions sont équivalentes jusqu'à une constante additive. C'est-à-dire que si et sont des fonctions de complexité de kolmogorov (définies via différents langages ou modèles), alors il existe une constante telle que pour chaque chaîne , …
Selon Immerman , la classe de complexité associée aux requêtes SQL est exactement la classe des requêtes sécurisées dans (requêtes de premier ordre plus opérateur de comptage): SQL capture les requêtes sécurisées. (En d'autres termes, toutes les requêtes SQL ont une complexité dans , et tous les problèmes dans peuvent …
Je voudrais savoir si un type universellement quantifié : est un sous-type, ou cas particulier, de type existentiellement quantifié avec la même signature:TaTaT_aTa=∀X:{a∈X,f:X→{T,F}}Ta=∀X:{a∈X,f:X→{T,F}}T_a = \forall X: \left\{ a\in X,f:X→\{T, F\} \right\}TeTeT_eTe=∃X:{a∈X,f:X→{T,F}}Te=∃X:{a∈X,f:X→{T,F}}T_e = \exists X: \left\{ a\in X,f:X→\{T, F\} \right\} Je dirais "oui": si quelque chose est vrai "pour tous les …
Considérez les arbres binaires sans étiquette et enracinés. Nous pouvons compressons ces arbres: chaque fois qu'il ya des pointeurs vers des sous - arbres et avec (interprétation l'égalité structurelle), nous enregistrons (wlog) et remplaçons tous les pointeurs vers avec des pointeurs vers . Voir la réponse d' uli pour un …
Considérons deux possibilités pour le problème P vs. NP: P = NP et P NP.≠≠\neq Soit Q l'un des problèmes NP-difficiles connus. Pour prouver P = NP, nous devons concevoir un seul algorithme polynomial de temps A pour Q et prouver que A résout correctement Q. Pour prouver P NP, …
De nombreux algorithmes de flux max que je vois couramment implémentés, l'algorithme de Dinic, le réétiquetage push et d'autres, peuvent voir leur coût asymptotique en temps amélioré grâce à l'utilisation d' arbres dynamiques (également appelés arbres coupés de liens). Push relabel s'exécute en ou ou normalement, mais avec des arbres …
Considérons une représentation en virgule fixe qui peut être considérée comme un cas dégénéré d'un nombre flottant. Il est tout à fait possible d'utiliser le complément à 2 pour les nombres négatifs. Mais pourquoi un bit de signe est-il nécessaire pour les nombres à virgule flottante, les bits de mantisse …
Souvent, si les complexités ont des constantes telles que 3n, nous négligeons cette constante et disons O (n) et non O (3n). Je n'arrive pas à comprendre comment pouvons-nous négliger ce triple changement? Une chose varie 3 fois plus rapidement qu'une autre! Pourquoi négligeons-nous ce fait?
Je me demande comment trouver la circonférence d'un graphe non orienté clairsemé. Par clairsemés, je veux dire . Par optimal, j'entends la complexité temporelle la plus faible.| E| =O( | V| )|E|=O(|V|)|E|=O(|V|) J'ai pensé à une modification de l'algorithme de Tarjan pour les graphiques non orientés, mais je n'ai pas …
Eh bien, c'est une question générale. Et si quelqu'un veut rendre l'implémentation spécifique, je préférerai les choses liées à Unix. Mais il faut d'abord connaître les problèmes suivants en général: Je lis qu'un seul processus peut avoir plusieurs threads. Plusieurs threads du même processus partagent des choses entre eux. Je …
Le langage d'assemblage est converti en langage machine par l'assembleur. Pourquoi un compilateur convertirait-il un langage de haut niveau en assembleur? Ne peut-il pas convertir directement du langage de haut niveau en code machine?
Parfois, il est facile d'identifier la complexité temporelle d'un algorithme en l'examinant attentivement. Les algorithmes avec deux boucles imbriquées de sont évidemment . Les algorithmes qui explorent toutes les combinaisons possibles de groupes de deux valeurs sont évidemment .N 2 N 2 NNNNN2N2N^2NNN2N2N2^N Cependant, je ne sais pas comment "repérer" …
J'ai de vraies données que j'utilise pour un jeu de cartes simulé. Je ne m'intéresse qu'aux rangs des cartes, pas aux couleurs. Cependant, il s'agit d'un jeu de cartes standard , il n'y a donc que de chaque rang possible dans le jeu. Le jeu est bien mélangé pour chaque …
Puisqu'il n'y a qu'une constante entre les bases des logarithmes, n'est-ce pas juste d'écrire f(n)=Ω(logn)f(n)=Ω(logn)f(n) = \Omega(\log{n}) , par opposition à Ω(log2n)Ω(log2n)\Omega(\log_2{n}) , ou quelle que soit la base?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.