diff options
Diffstat (limited to 'src/components/landing/sections/Research.tsx')
-rw-r--r-- | src/components/landing/sections/Research.tsx | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/src/components/landing/sections/Research.tsx b/src/components/landing/sections/Research.tsx new file mode 100644 index 0000000..b6e5954 --- /dev/null +++ b/src/components/landing/sections/Research.tsx | |||
@@ -0,0 +1,92 @@ | |||
1 | /* | ||
2 | * SPDX-FileCopyrightText: 2023 Kristóf Marussy | ||
3 | * | ||
4 | * SPDX-License-Identifier: MIT | ||
5 | */ | ||
6 | |||
7 | import clsx from 'clsx'; | ||
8 | import type { ReactNode } from 'react'; | ||
9 | |||
10 | import { | ||
11 | type Icon, | ||
12 | Gear, | ||
13 | Graph, | ||
14 | MagicWand, | ||
15 | ShieldCheck, | ||
16 | } from '@phosphor-icons/react'; | ||
17 | |||
18 | import Section from '@site/src/components/landing/Section'; | ||
19 | |||
20 | import styles from './Research.module.css'; | ||
21 | |||
22 | function Topic({ | ||
23 | title, | ||
24 | style, | ||
25 | Icon, | ||
26 | children, | ||
27 | }: { | ||
28 | title: string; | ||
29 | style: string; | ||
30 | Icon: Icon; | ||
31 | children: ReactNode; | ||
32 | }) { | ||
33 | return ( | ||
34 | <div className={clsx('col', 'col-3', styles.topic)}> | ||
35 | <div className={styles.topic__contents}> | ||
36 | <div className={clsx(styles.topic__icon, style)}> | ||
37 | <Icon aria-hidden="true" size={128} weight="light" /> | ||
38 | </div> | ||
39 | <div className={styles.topic__text}> | ||
40 | <h3 className={styles.topic__title}>{title}</h3> | ||
41 | <p className={styles.topic__description}>{children}</p> | ||
42 | </div> | ||
43 | </div> | ||
44 | </div> | ||
45 | ); | ||
46 | } | ||
47 | |||
48 | export default function Research() { | ||
49 | return ( | ||
50 | <Section id="research" title="Research"> | ||
51 | <div className={clsx('container', styles.topics)}> | ||
52 | <div className="row"> | ||
53 | <Topic | ||
54 | title="Critical systems" | ||
55 | Icon={Gear} | ||
56 | style={styles['topic__icon--system']} | ||
57 | > | ||
58 | Cyber-physical systems especially in the railway, automotive, | ||
59 | and aerospace domains with stringent correctness and relability | ||
60 | requirements | ||
61 | </Topic> | ||
62 | <Topic | ||
63 | title="Formal verification" | ||
64 | Icon={ShieldCheck} | ||
65 | style={styles['topic__icon--verification']} | ||
66 | > | ||
67 | Proving the safety and reliability of critical system designs and | ||
68 | software components in a mathematically precise way | ||
69 | </Topic> | ||
70 | <Topic | ||
71 | title="Automated reasoning" | ||
72 | Icon={MagicWand} | ||
73 | style={styles['topic__icon--reasoning']} | ||
74 | > | ||
75 | Integrating logical and numerical solvers with intelligent | ||
76 | heuristics to answer challenging analysis questions and | ||
77 | synthesize reliable system designs | ||
78 | </Topic> | ||
79 | <Topic | ||
80 | title="Graph generation" | ||
81 | Icon={Graph} | ||
82 | style={styles['topic__icon--graph']} | ||
83 | > | ||
84 | Efficient graph-based information processing for system modeling, | ||
85 | testing data-driven systems, and knowledge representation in | ||
86 | autonomous systems | ||
87 | </Topic> | ||
88 | </div> | ||
89 | </div> | ||
90 | </Section> | ||
91 | ); | ||
92 | } | ||