libsent/src/dfa/dfa_util.c

Go to the documentation of this file.
00001 
00017 /*
00018  * Copyright (c) 1991-2006 Kawahara Lab., Kyoto University
00019  * Copyright (c) 2000-2005 Shikano Lab., Nara Institute of Science and Technology
00020  * Copyright (c) 2005-2006 Julius project team, Nagoya Institute of Technology
00021  * All rights reserved
00022  */
00023 
00024 #include <sent/stddefs.h>
00025 #include <sent/dfa.h>
00026 
00032 void
00033 print_dfa_info(DFA_INFO *dinfo)
00034 {
00035   j_printf("DFA grammar info:\n");
00036   j_printf("      %d nodes, %d arcs, %d terminal(category) symbols\n",
00037          dinfo->state_num, dinfo->arc_num, dinfo->term_num);
00038   j_printf("      category-pair matrix size is %d bytes\n",
00039          sizeof(unsigned char) * dinfo->term_num * dinfo->term_num / 8);
00040 }
00041 
00047 void
00048 print_dfa_cp(DFA_INFO *dinfo)
00049 {
00050   int i,j;
00051   int t;
00052 
00053   j_printf("---------- terminal(category)-pair matrix ----------\n");
00054   /* horizontal ruler */
00055   j_printf("    ");
00056   for (j=0;j<dinfo->term_num;j++) {
00057     if (j > 0 && (j % 10) == 0) {
00058       t = j / 10;
00059       j_printf("%1d", t);
00060     } else {
00061       j_printf(" ");
00062     }
00063   }
00064   j_printf("\n    ");
00065   for (j=0;j<dinfo->term_num;j++) {
00066     j_printf("%1d", j % 10);
00067   }
00068   j_printf("\n");
00069   
00070   j_printf("bgn ");
00071   for (j=0;j<dinfo->term_num;j++) {
00072     j_printf((dfa_cp_begin(dinfo, j) == TRUE) ? "o" : " ");
00073   }
00074   j_printf("\n");
00075   j_printf("end ");
00076   for (j=0;j<dinfo->term_num;j++) {
00077     j_printf((dfa_cp_end(dinfo, j) == TRUE) ? "o" : " ");
00078   }
00079   j_printf("\n");
00080   for (i=0;i<dinfo->term_num;i++) {
00081     j_printf("%3d ",i);
00082     for (j=0;j<dinfo->term_num;j++) {
00083       j_printf((dfa_cp(dinfo, i, j) == TRUE) ? "o" : " ");
00084     }
00085     j_printf("\n");
00086   }
00087 }

Generated on Tue Dec 26 16:16:33 2006 for Julius by  doxygen 1.5.0