#import "@preview/touying:0.6.1": * #import "@preview/physica:0.9.5": * #import "@preview/cetz:0.3.4" #import "@preview/typsium:0.2.0": ce #import "@preview/numbly:0.1.0": numbly #import "./theme.typ": * #set heading(numbering: numbly("{1}.", default: "1.1")) #show ref: set text(size:0.5em, baseline: -0.75em) #let cetz-canvas = touying-reducer.with(reduce: cetz.canvas, cover: cetz.draw.hide.with(bounds: true)) #show: university-theme.with( config-info( title: "Implementation Specific QAS", // Required date: datetime.today().display(), authors: ("Noa Aarts"), // Optional Styling (for more / explanation see in the typst universe) // ignore how bad the images look i'll adjust it until Monday title-color: blue.darken(10%), ), config-common( // handout: true, // enable this for a version without animations ), aspect-ratio: "16-9", config-colors( primary: rgb("#00a6d6"), secondary: rgb("#00b3dc"), tertiary: rgb("#b8cbde"), neutral-lightest: rgb("#ffffff"), neutral-darkest: rgb("#000000"), ), ) #show outline.entry: it => link( it.element.location(), text(fill: rgb("#00b3dc"), size: 1.3em)[#it.indented(it.prefix(), it.body())], ) == The Goal #slide[ #align(center + horizon)[ #cetz-canvas({ import cetz.draw: * let left = -9 let mid = 0 let right = 7 let arr_col = rgb("#00a6d6").lighten(70%) content((left, 6), [Inputs]) content((mid, 6), [Process]) content((right, 6), anchor: "west", [Outputs]) content((left, 3), [Qubits]) content((left, 2), [Gates]) content((left, 1), [Connections]) content((left, 0), text(fill: red)[Fidelities]) content((left, -1), [Expressibility]) content((left, -2), [Entanglement]) content((left, -3), text(fill: red)[Noise Treshold]) content((left, -4), text(fill: red)[Max Parameters]) line( (-5.6, 0), (-2.1, 0), stroke: ( thickness: 8pt, paint: arr_col, cap: "round", ), mark: (end: "stealth", scale: 8, fill: arr_col), ) content((0,0), [test]) rect(cetz.vector.add((mid, 0), (-2, -2)), cetz.vector.add((mid, 0), (2, 2)), radius: (rest: .4), fill: rgb("#00b3dc")) content((mid, 0), text(size: 4em)[?]) line( (2.4, 0), (6.0, 0), stroke: ( thickness: 8pt, paint: arr_col, cap: "round", ), mark: (end: "stealth", scale: 8, fill: arr_col), ) content((right, 3), [QML Kernels], anchor: "west") content(cetz.vector.add((right, 2), (1, 0)), anchor: "west", [Balanced]) content(cetz.vector.add((right, 1), (1, 0)), anchor: "west", text(fill: red)[Best Expressibility]) content(cetz.vector.add((right, 0), (1, 0)), anchor: "west", text(fill: red)[Best Entanglement]) content(cetz.vector.add((right, -1), (1, 0)), anchor: "west", text(fill: red)[Least Noise]) content(cetz.vector.add((right, -2), (1, 0)), anchor: "west", text(fill: red)[Fewer Parameters]) }) ] ] == The Process - Cost function based on - Expressibility - Entanglement - #text(fill: red)[Noise Treshold] - #text(fill: red)[Max Parameters] - Possible Methods (not complete) - Monte-Carlo Tree-Search - Machine Learning (many options) - Bayesian Optimization - Differentiable Optimization strategies #let chev(start, len, f: none) = { import cetz.draw: * line(fill: f, cetz.vector.add(start,(-1, -1)) , cetz.vector.add(start, (len - 1, -1)) , cetz.vector.add(start,(len, 0)) , cetz.vector.add(start, (len - 1, 1)) , cetz.vector.add(start,(-1,1)) , start , cetz.vector.add(start,(-1,-1))) } #let lg(color1, color2) = gradient.linear(color2, color1, color2, angle: 90deg) #let today-offset = (datetime.today() - datetime(day: 10, month: 11, year: 2025)).weeks() == Planning #slide[ #cetz-canvas(length: 0.8cm, { import cetz.draw: * let lower = -10 content((today-offset, 0), anchor: "south", [today]) line((today-offset, -0.5), (today-offset, lower), stroke: (paint: rgb("#ff00cc"))) for x in (0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24) { content((x, 0), text(size: 0.4em)[#(datetime(day: 10, month: 11, year: 2025) + duration(weeks: x)).display("[day]/[month]")], anchor: "north") line(stroke: (paint: lime, dash: "dashed"), (x, -0.5), (x,lower)) } // yellow = literature // green = planning // blue = free // red = make thing line((5.5, -0.5), (5.5, lower), stroke: (paint: rgb("#ff00cc"))) content((5.0, lower - 0.1), anchor: "north", "Introduction") line((14.5, -0.5), (14.5, lower), stroke: (paint: rgb("#ff00cc"))) content((14, lower - 0.1), anchor: "north", "Midterm") chev((0.6,-2), 6.6, f: lg(yellow, yellow.darken(10%))) chev((6.2,-2), 1.0, f: gradient.linear(green, rgb(0,0,0,0), angle: 60deg).sharp(3).repeat(6)) content((1.1,-2), anchor: "west", "Literature") chev((7, -2), 2, f: lg(blue.lighten(20%), blue.lighten(5%))) content((7.5, -3.5), anchor: "north", "Holiday") chev((9, -2), 6, f: lg(red, red.darken(10%))) content((10, -2), anchor: "west", "Make V1") chev((15.5, -2), 10.5, f: lg(red, red.darken(10%))) content((15.5, -1.5), anchor: "west", "Improvements") content((19.5, -2.5), anchor: "west", "Testing") chev((15.5 + 10.5, -2), 2, f: lg(purple, purple.darken(10%))) content((25.5, -3.5), anchor: "north", "Writing") }) ]