[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Para construir un paquete que requiere interactuar con una BD?



> > Si todavía no me crees, dime una forma de satisfacer la dependencia
> > A | C, A | D, B | C, B | D en la cual no suceda que estén instalados
> > (A y B) o (C y D), como es tu objetivo.
>
> Bueno, actualmente tengo php4-mysql | php4-pgsql, mysql-client |
> postgresql-client y me parece que es equivalente a las cuatro
> combinaciones...

Pues no lo es. De esa forma es posible instalar php4-mysql para
satisfacer la primera condición y postgresql-client para satisfacer
la segunda, y dselect quedaría contento, pero eso no es lo que tú quieres.

Tú quieres que haya que instalar, o bien php4-mysql y mysql-client,
o bien php4-pgsql y postgresql-client.

> Pero no, me entendiste mal - quiero justo lo contrario. Quiero que
> _sólamente_ puedas instalarlo con A+B o con C+D, no con A+D ni con B+C.

"Oh, señor, dame paciencia... ¡pero dámela ya!"

Columna v1. Tabla de verdad de (A && B) || (C && D)
Columna v2. Tabla de verdad de (A || C) && (A || D) && (B || C) && (B || D)

A  B  C  D  v1 v2
0  0  0  0  0  0
0  0  0  1  0  0
0  0  1  0  0  0
0  0  1  1  1  1
0  1  0  0  0  0
0  1  0  1  0  0
0  1  1  0  0  0
0  1  1  1  1  1
1  0  0  0  0  0
1  0  0  1  0  0
1  0  1  0  0  0
1  0  1  1  1  1
1  1  0  0  1  1
1  1  0  1  1  1
1  1  1  0  1  1
1  1  1  1  1  1

La tabla está generada con este programa:

#include <stdio.h>
int main() {
  int A, B, C, D, v1, v2;
  printf("A  B  C  D  v1 v2\n");
  for (A = 0; A <= 1; A++) {
    for (B = 0; B <= 1; B++) {
      for (C = 0; C <= 1; C++) {
        for (D = 0; D <= 1; D++) {
          v1 = (A && B) || (C && D);
          v2 = (A || C) && (A || D) && (B || C) && (B || D);
          printf("%d  %d  %d  %d  %d  %d\n", A, B, C, D, v1, v2);
        }
      }
    }
  }
  return 0;
}

Esto quiere decir, dado que las dos últimas columnas son siempre idénticas,
que v1 y v2 son expresiones lógicas equivalentes, que es lo que he
estado tratando de decirte desde el principio.

Si todavía te quedan dudas, compila y ejecuta tú mismo el programa,
te aseguro que no hay ningún truco.



Reply to: